1. 程式人生 > >linux下啟動多個不同版本的mysql服務

linux下啟動多個不同版本的mysql服務

一,我的電腦裡面mysql的情況

我電腦裡面有二個mysql

1,一個是軟體管理工具安裝的mysql,如yum,apt get,pacman這樣的軟體,版本是mysql5.1.50

2,另一個是我手動編譯安裝的,安裝在/usr/local/mysql下面,版本是mysql5.1.26-rc-log

如果能啟動多個mysql服務的話,其實有許多好處的,你可以檢視一下mysql效能的提升啊;啟動了多個mysql服務後,你可以進行資料庫進的資料同步,做個mysql叢集什麼的等等,我的初忠呢是想搞個比較新版本,又不想把以前的那個msyql給搞得不能用了,最好都能用。

二,安裝配置要注意的地方

1,安裝的目錄不要一樣,不管你是用管理軟體安裝的,還是手動安裝的,多個mysql不要安裝在同一個目錄。

2,資料庫檔案存放的地方,不要相同,也就是my.cnf裡面的datadir的的設定不要一樣

3,mysql的啟動埠不要一樣,預設的3306,多個時候可以13306,13307等最好設定成10000以外的。

4,mysql的服務socket不要設定成一樣,就是my.cnf裡面socket的設定不要一樣

5,mysql服務的pid檔案不要設定成一樣,就是my.cnf裡面pid-file的設定不要一樣

看一下其中一個my.cnf中mysqld的配置,

[mysqld]
port        = 13306
pid-file     = /var/lib/mysql/mysql.pid
socket        = /tmp/mysql50.sock
datadir        = /var/lib/mysql
tmpdir      = /tmp
basedir     = /usr
skip-locking
#skip-federated
key_buffer = 16M
max_allowed_packet = 1M
table_cache = 64
sort_buffer_size = 512K
net_buffer_length = 16K
myisam_sort_buffer_size = 8M

另一個my.cnf中mysqld的配置

[mysqld]
pid-file     = /usr/local/mysql/mysql.pid
socket             = /tmp/mysql.sock
port         = 3306
basedir            = /usr/local/mysql
datadir             = /usr/local/mysql/data
tmpdir             = /tmp
language   = /usr/local/mysql/share/mysql/english
long_query_time = 2
log-slow-queries = /usr/local/mysql/mysql-slow.log
skip-locking
key_buffer = 16M
max_allowed_packet = 1M
table_cache = 64
sort_buffer_size = 512K
net_buffer_length = 8K
read_buffer_size = 256K
read_rnd_buffer_size = 512K
myisam_sort_buffer_size = 8M

安裝配置mysql的時候,就要注意上面的幾點。

三,啟動mysql伺服器端

1,啟動一個mysql,[[email protected] zhangy]# mysqld_safe --user=root --skip-grant-tables

2,啟動第二個mysql,[[email protected] zhangy]# /usr/local/mysql/bin/mysqld_safe --user=root --skip-grant-tables

如果你用mysql.server來啟動的話,就要注意一下點,要修改一下里面的內容,修改如下:大約218行左右

then
 print_defaults="$bindir/mysql_print_defaults"
else
 # Try to find basedir in /etc/my.cnf
 conf=/usr/local/mysql/my.cnf    //預設情況下是/etc/my.cnf
 print_defaults=
 if test -r $conf
 then

如果你不修改,你用mysql.server根本無法啟動,因為已經有一個mysql服務用了這個配置檔案,到時肯定會提示錯誤的Starting MySQL.Manager of pid-file quit without updating file.[FAILED]

四,啟動mysql的客戶端

1,啟動一個[[email protected] zhangy]# mysql  如果用其他使用者,加上-u

2,啟動另一個[[email protected] zhangy]# mysql -u root -S /tmp/mysql.sock 特別要注意這個mysql.sock如果不加的話,是啟動不了的。二個msyql預設都是用一個.sock,肯定在什麼地方可以改的,就根my.cnf差不多,只不過我沒有找到而已

[[email protected] ~]$ ps -e|grep mysql
 4638 pts/0    00:00:00 mysqld_safe
 4781 pts/0    00:00:00 mysqld
 4795 pts/0    00:00:00 mysql
 4801 pts/1    00:00:00 mysqld_safe
 5049 pts/1    00:00:00 mysqld
 5054 pts/1    00:00:00 mysql

插個圖片

多個mysql服務

相關推薦

linux啟動不同版本mysql服務

一,我的電腦裡面mysql的情況 我電腦裡面有二個mysql 1,一個是軟體管理工具安裝的mysql,如yum,apt get,pacman這樣的軟體,版本是mysql5.1.50 2,另一個是我手動編譯安裝的,安裝在/usr/local/mysql下面,版本是my

linux啟動php,分別監聽不同的埠。

在工作中,我們可能會遇到,伺服器叢集的搭建。 這個時候,我們不可能,每一臺伺服器都是lnmp的環境,我們會把nmp分別放在不同的伺服器上,不同的伺服器負責不同的功能。比如我們下面要說的php 加入nginx和mysql已經在其他的伺服器上配置好了,這個時候我們就需要將php這另外一臺空閒的伺服器上配置好。

linux啟動jetty9

1.編輯jetty.sh檔案, 在開頭加入 JETTY_HOME=/usr/local/jetty-one-8081 JETTY_RUN=$JETTY_HOME/bin 2.修改jetty根目錄下的start.ini ## Connector port to liste

linux安裝jdk版本

在4.4(Kitkat)之前一直用的SunJDK1.6版本來編譯,到4.4的時候開始用SunJDK1.7版本編譯,從Android L開始到現在的5.0谷歌開始使用OpenJDK來編譯。 所以在一臺電腦上要進行原始碼編譯需要安裝多個版本的JDK。 我現在用的系統是LinuxMint17,基於UBUNTU

Linux編譯不同目錄的檔案以及靜態庫、動態庫的使用

先看兩篇博文,作為基礎知識。如果對C/C++編譯連結過程都瞭解的話,可以跳過不看。一、  編譯不同目錄下的多個檔案各個檔案的佈局如下:       head.h檔案的程式碼:#ifndef  HEAD_H#define  HEAD_Hint add(int a, int b);  #endif  /*HEAD

關於"一個作業系統如何安裝不同版本的JDK?"、並實現不同版本之間的相互切換使用

本文章將教你如何在一個作業系統下安裝多個不同版本的JDK, 並且實現不同版本直接的相互切換使用。 JDK的各個版本如下:  由於以前我們總是習慣直接在Oracle官網上找到所需的版本進行直接下載JDK, 但是筆者我今天也是埋頭直接去了官網, 奈何Oracle官方已經限制了

Linux安裝版本的python

安裝其他版本,例如python3.5 (1)安裝依賴包和庫 備註:由於需要採用編譯方式安裝,需要用到大量的庫和依賴包,因此我們需要編譯之前讓它們就緒。 sudo apt-get install build-essential libncursesw5-dev libreadlin

linux系統存在python版本,指定特定版本作為預設版本的方法

    一個linux系統裡面可能會存在多個python版本,如果想指定特定的版本作為終端開啟的預設版本,方法是將對應版本的bin路徑加入系統路徑 PATH。    操作步驟為:    (1)檢視當前python版本,在任意終端輸入: python  --version   

Linuxnginx+Tomcat負載均衡的實現

java 負載 均衡 bootstra 火墻 瀏覽器 startup 顯示 tomcat的配置 由於項目需要,共創建了10個Tomcat端,由nginx負責轉發。9個Tomcat端口分別是8080,11000,12000,13000,14000,15000,16000,17

LinuxSVN+Tomcat自動部署

mod .html 部署 update語句 hooks 參考 eba bsp auth 項目中都是jsp開發,所以用到Tomcat。 在我文章中也寫過多個Tomcat 的部署,具體可以參考:http://www.cnblogs.com/magmell/p/7045193.h

Linux 啟動tomcat

not link class 有一個 自己的 上啟 file 沒有 red 閑來無事學習nginx,想要配置個load balance。可是先決條件是:得有兩個web容器。兩個電腦是不用想了。只能想辦法在一個機器上啟動兩個tomcat。原以為挺簡單的,只要改改port就

Linux svn 項目多用戶分配

usr osi 匿名 win 註意 () 禁止訪問 缺省值 管理 安裝步驟如下: 1、yum install subversion 2、輸入rpm -ql subversion查看安裝位置,如下圖: 輸入 svn –help可以查看svn的使用方法 需求 開發

Linux部署Tomcat端

由於專案需要,共建立了10個Tomcat端,由nginx負責轉發。10個Tomcat埠分別是8080,11000,12000,13000,14000,15000,16000,17000,18000,19000. nginx配置:upstream Tomcat { server xxx.

linux配置tomcat同時執行

在一臺linux下配置多個tomcat同時執行 詳細步驟如下: 1.在/etc/profile檔案下進行修改配置,如果安裝JDK的時候已經配置了JAVA環境變數,則無需再次配置.同時新增兩組CATALINA環境變數如下: 命令:#vi /etc/profile 如下為我的t

Linux配置tomcat

Linux環境下部署多臺tomcat伺服器,最近用到虛擬機器就順便整理一個親測的方法,下面用虛擬機器環境示範: 1、原理簡述: 1.1 tomcat啟動時會去查詢tomcat的根目錄,並且會通過CATALINA_BASE和CATALINA_HOME 這兩個變數

如何再一臺電腦上配置不同版本的tomcat同時執行

1、配置執行tomcat 首先要配置java的jdk環境,這個就不在寫了  不懂去網上查查,這裡主要介紹再jdk環境沒配置好的情況下 如何配置執行多個tomcat 2、第一個tomcat: 找到"我的電腦" 裡面的環境變數 , 新增"CATALINA_HOME"="E:\a

Linux佈置Tomcat,同時執行Tomcat。

轉載這個老哥的https://www.cnblogs.com/webcc/archive/2012/08/22/2651084.html扣號內是我自己操作時的一些問題和決解方法。環境說明:作業系統:  RedHet 5.3JDK版本:  1.4.2WEB容器:    Tomc

VirtuaWin-windows的虛擬桌面就像linux桌面

    發現了一個好工具,VirtuaWin,Windows下的多個桌面,嘗試了下,很不錯的小軟體,而且是免費開源的,下載地址是, VirtuaWin 4.3 (Unicode support)。     這個工具的設定非常方便,雙擊托盤圖示就會出現設定介面, 一般預設都可以

Android統一依賴不同版本的Support v7包

解決這個問題再gradle(project)目錄新增 ext {     supportlib_version = '26.1.0' } subprojects {     project.confi

單臺伺服器部署和安裝不同版本的Tomcat與Jdk

一、問題     由於之前開發的專案的執行環境是Tomcat7和Jdk6,,部署到伺服器上已成功執行,現要對專案的執行日誌進行監控,便於問題的發現,然而新開發的監控元件必須執行在 Tomcat8上,所以需在同臺伺服器下安裝Tomcat8,而Tomcat8部署需要Jdk7以上