一台伺服器執行多個MySQL例項

2021-08-21 03:40:54 字數 3501 閱讀 6879

一台伺服器執行多個mysql例項

多例項不同之處

資料目錄

埠 socket檔案

pid檔案

1:安裝mysql

2: 備份my.conf(新版本可以不操作這一步)

#mv /etc/my.conf /etc/my.conf.bak

#vi my.conf

[mysqld]

#daemonize = on #注釋掉這個,因為這個是守護程序

user = mysql

port = 3306

basedir = /usr/local/mysql

datadir = /usr/local/mysql/data

socket = /tmp/mysql.sock

pid-file = /var/run/mysqld/mysqld.pid

character-set-server = utf8

collation-server = utf8_general_ci

max_connections = 1024

log-error = /var/log/mysqld.log

3:初始化目錄

#bin/mysqld --initialize --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data1 --user=mysql

#bin/mysqld --initialize --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data2 --user=mysql

#bin/mysqld --initialize --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data3 --user=mysql

4: 編寫配置檔案

#vi /usr/local/mysql/my.cnf

[mysqld_multi]

mysqld = /usr/local/mysql/bin/mysqld_safe

mysqladmin = /usr/local/mysql/bin/mysqladmin

user = multi_admin

password = my_password

[mysqld1]

socket = /tmp/mysql1.sock

port = 3306

pid-file = /usr/local/mysql/data1/mysql1.pid

datadir = /usr/local/mysql/data1

user = mysql

character-set-server = utf8

collation-server = utf8_general_ci

max_connections = 1024

log-error = /var/log/mysql1.log

[mysqld2]

socket = /tmp/mysql2.sock

port = 3307

pid-file = /usr/local/mysql/data2/mysql2.pid

datadir = /usr/local/mysql/data2

user = mysql

character-set-server = utf8

collation-server = utf8_general_ci

max_connections = 1024

log-error = /var/log/mysql2.log

[mysqld3]

socket = /tmp/mysql3.sock

port = 3308

pid-file = /usr/local/mysql/data3/mysql3.pid

datadir = /usr/local/mysql/data3

user = mysql

character-set-server = utf8

collation-server = utf8_general_ci

max_connections = 1024

log-error = /var/log/mysql3.log

加入環境變數

#export path=$path:/usr/local/mysql/bin

啟動服務1

#bin/mysqld_multi --mysqladmin=/usr/local/mysql/bin start 1

檢視狀態

#bin/mysqld_multi report

以上實驗不成功

可以複製多個my.conf檔案,改動埠 datadir socket pid-file log-error

#cp /usr/local/mysql/etc/my.conf /usr/local/mysql/etc/my1.conf

[mysqld]

daemonize = on

socket = /tmp/mysql1.sock

port = 3306

pid-file = /usr/local/mysql/data1/mysql1.pid

datadir = /usr/local/mysql/data1

user = mysql

character-set-server = utf8

collation-server = utf8_general_ci

max_connections = 1024

log-error = /var/log/mysql1.log

使用mysqld來啟動

#/usr/local/mysql/bin/mysqld --defaults-file=/usr/local/mysql/etc/my1.conf

#/usr/local/mysql/bin/mysqld --defaults-file=/usr/local/mysql/etc/my2.conf

#/usr/local/mysql/bin/mysqld --defaults-file=/usr/local/mysql/etc/my3.conf

連線資料庫

#mysql -uroot -p -s /tmp/mysql1.sock

#mysql -uroot -p -s /tmp/mysql2.sock

#mysql -uroot -p -s /tmp/mysql3.sock

修改密碼

#alter user 'root'@'localhost' identified by '!@laojke123';

一台伺服器配置多個tomcat windows

1.配置環境變數 key catalina home 8088 value d tomcat tomcat7 8088 key catalina base 8088 value d tomcat tomcat7 8088 2.修改啟動埠和關閉埠 1 修改這個port 8006 原來預設的為 8005...

同一臺伺服器建立多個mysql例項

跟建立單例項一樣的過程,注意點 1,只要區分basedir 例 opt mysql opt mysql3307 2,socket檔名不一樣 例 tmp mysql.sock tmp mysql3307.sock 3,pid檔名不一樣 例 tmp mysql.pid tmp mysql3307.pid...

同一臺伺服器啟動多個driver負載機例項

cosbench 新增driver 負載機說明 driver 是cosbench 測試工具中對負載機的一種標記,相當於 loadrunner 中的負載發生器。在進行測試時,不管出於什麼原因,我有時候就想單台伺服器啟用多個 driver 例項,充分利用伺服器的效能。我在進行測試時,就使用到一台機器啟用...