乙個伺服器啟動兩個mysql例項

2021-09-30 15:38:06 字數 1602 閱讀 3676

在一台伺服器上,可以通過mysqld_multi配置多個mysql例項執行。

假設伺服器上現在已經執行乙個mysql例項,資料目錄是/var/lib/mysql,埠是3306,所用的socket連線檔案位於/tmp/mysql.sock。那麼可以按照如下步驟,再啟動乙個或者多個例項。

一,建立新例項的資料目錄

新啟動mysql例項之後,其資料位於哪個目錄,就是例項相關的資料庫檔案都準備放在哪個目錄下,假定我把它們放在 /var/lib/mysql2 目錄下。

mkdir /var/lib/mysql2 建立目錄。

chown mysql /var/lib/mysql2 給mysql使用者許可權。

二,建立資料庫

這一步是在剛剛建立的目錄下面,初始化資料庫。

bin/mysql_install_db --user=mysql --datadir=/var/lib/mysql2 // 將mysql等系統資料庫安裝到例項準備執行的目錄。

三,配置檔案

修改配置檔案 my.cnf,這也是最重要的一步。主要是重新設定每個例項的pid-file,socket,port等屬性,我的配置檔案 如下:

[mysqld_multi]

mysqld = /install/mysql/bin/mysqld_safe

mysqladmin = /install/mysql/bin/mysqladmin

user = root

# the mysql server

[mysqld1]

port = 3306

socket = /tmp/mysql.sock

datadir =/var/lib/mysql

pid-file =/var/lib/mysql/mysql.pid

user =mysql

log-bin =master-bin

log-bin-index =master-bin.index

server-id =1

[mysqld2]

port = 3307

socket =/tmp/mysql2.sock

datadir =/var/lib/mysql2

pid-file =/var/lib/mysql2/mysql.pid

user =mysql

四,啟動例項

在配置檔案配置好之後,就可以啟動了

/install/mysql/bin/mysqld_multi start 2 // 這樣就啟動了。

五,開啟控制台

在啟動新的例項之後,也可以開啟控制台操作,但要指定socket和埠等資訊,如:

mysql --user=root --port=3307 --socket=/tmp/mysql2.sock -p

這就完成了。只是要資料目錄和許可權,然後是配置檔案 ,當然這裡的配置檔案 ,我都是很簡單的配置,實際情況,肯定不是這樣的,可能還會有一些基於特定例項的優化引數。

乙個伺服器建立兩個MySQL

將已安裝的資料庫資料夾複製到另乙個目錄下 開啟複製目錄下的my.ini檔案修改 client port 3307 第乙個資料庫的預設埠是3306 這裡需要另外啟用乙個埠 the tcp ip port the mysql server will listen on mysqld port 3307 ...

乙個伺服器同時配置兩個tomcat

當第乙個tomcat啟動後,後面tomcat的server.xml中的埠不管怎麼改,仍然會報埠衝突。後來在dos下執行才發現所有的tomcat都會去找catalina home和catalina base這兩個環境變數,因此步驟如下 1.使用壓縮版的tomcat不能使用安裝版的。2.第乙個tomca...

python兩個佇列實現乙個棧和兩個棧實現乙個佇列

棧 先進後出 佇列 先進先出 思路兩個棧實現乙個佇列 思路 兩個棧 都是先進後出 push新增資料的時候,將data資料push到stack1 中,pop資料的時候,先判斷stack2種是否有資料 如果有資料的話,直接pop stack2中的資料 因為pop是直接彈出最後乙個資料 如果stack2中...