MySQL多例項的配置應用例項場景

2022-09-21 00:30:11 字數 2875 閱讀 9826

目錄

什麼是多例項:

在一台伺服器上,執行多個資料庫服務,這些服務程序通過不同的socket監聽不同的服務埠來提供各自的服務;

為什麼要配置多例項

多例項的應用場景

配置多例項

1.安裝軟體

具體操作:

解壓軟體、修改目錄名、修改path路徑

如果在程式設計客棧已有資料庫服務的機器上執行多例項,先檢視資料庫服務的版本是否支援多例項,如果不支援需要停掉服務,安裝能支援多例項的資料庫版本

接下來安裝提供多例項服務的軟體

下面演示的版本為mysql5.7.36,使用二進位制安裝,其餘安裝方式請看mysql的安裝方式

groupadd -r -g 306 mysql

useradd -g 306 -r -u 306 mysql

tar -zxvf mysql-5.7.36-linux-glibc2.12-x86-64.tar.gz

mv /root/mysql-5.7.36-linux-glibc2.12-x86_64 /usr/local/mysql

2.配置檔案

主配置檔案/etc/my.cnf

vim /etc/my.cnf

[mysqld_multi] #啟動多例項

mysqld = /usr/local/mysql/bin/ojqlgwyjmysqld_safe #指定程序檔案路徑

mysqladmin = /usr/local/mysql/bin/mysqladmin #指定管理命令路徑

user = root #指定程序使用者

#pass = mysql@123 #可以不指定密碼,在初始化的時候也會出現密碼

[mysqld3306] #例項程序名稱,3306是服務編號

socket = /tmp/mysql.sock1 #指定sock檔案的路徑和名稱

port = 3306 #指定埠

pid-file = /data/3306/mysqld.pid #程序檔案pid號檔案按位置

datadir = /data/3306 #資料庫目錄,最好提前建立

log-error = /data/3306/mysqld.log #錯誤日誌位置

[mysqld3307]

socket = /tmp/mysql.sock2

port = 3307

pid-file = /data/3307/mysqld.pid

datadir = /data/3307

log-error = /data/3307/mysqld.log

mkdir -p /data/330

chown -r mysql:mysql /data/330

socket檔案:自己訪問自己的資料庫服務時,通過socket檔案傳遞引數

3.啟動服務

管理多例項

mysqld_multi start 例項編號 #啟動服務

mysqld_multi --user=root --password=密碼 stop 例項編號

/usr/local/mysql/bin/mysqld_multi start 3306 #首次啟動初始化

#也可以使用這個命令來初始化

/usr/local/mysql/bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/data/3307

#用這個命令初始化之後還需要在使用啟動服務

/usr/local/mysql/bin/mysqld_multi start 3307

輸入絕對路徑太麻煩,可以寫入環境變數

vim /etc/

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

source /etc/profile.d/mysql.sh

#然後就可以寫短指令

mysqld_multi start 3307

4.檢視服務狀態

ss -nultp | grep 3306

ss -nultp | gr 3307

5.使用初始密碼連線服務

客戶端訪問

本機連線

使用初始密碼連線

修改本機登入密碼

#mysql -uroot -p'初始密碼' -s sock檔案

#mysql>alter user root@"localhost" identified by "新密碼";

#連線第乙個資料庫例項測試

/usr/local/mysql/bin/mysql -uroot -p'' -s /tmp/mysql.sock1

show databases;

alter user root@"localhost" identified by "123456";

show databases;

exit

#連線第二個資料庫例項測試

mysql -uroot -p'' -s /tmp/mysql.sock2

show databases;

alter user root@"localhost" identified by "123456";

show

exit

使用新密碼再次登入驗證

6.停止多例項

mysqld_multi --user=root --password=123456 stop 3306

#mysqld_multi --user=root --password=123456 stop 如果不寫例項號,就會停止資料庫使用者為root密碼為123456的例項

ss | grep 3306

mysql 應用例項 MySQL多例項應用

國內映象 2.上傳 解壓 tar xf mysql 5.6.46 linux glibc2.12 x86 64.tar.gz tar xf mysql 5.7.12 linux glibc2.12 x86 64.tar.xz tar xf mysql 8.0.18 linux glibc2.12 x...

mysql多例項配置 MySQL多例項資料庫配置

mysql多例項資料庫配置 1 登入進入mysql,在mysql 5.7.18 bin目錄下執行命令 mysql uroot p s usr local mysql 5.7.18 data 3307 mysql.sock 其中 p 是指定密碼,如果沒有密碼則可以不寫 p,s是指定sock檔案,mys...

mysql多例項配置

1 mysql安裝參考 2 建立 例項的資料檔案目錄 cd data mkdir p data 3 copy mysql軟體到對應例項目錄下 cd data cp r mysql dbdata1 cp r mysql dbdata2 4 編輯配置檔案my.cnf cd data dbdata1 vi...