一台linux上运行多个mysql_linux下同时运行多个mysql
來自網(wǎng)絡(luò),感謝開源,感謝分享
通過rpm安裝mysql,測試版本5.1.48
1、在linux下通過:
#useradd multi -g mysql -s /sbin/nologin添加一個multi用戶,并加入到mysql組
#passwd multi給multi用戶添加密碼,這里設(shè)置的密碼為multi
2、拷貝數(shù)據(jù)文件:
rpm安裝mysql默認(rèn)datadir為/var/lib/mysql (同時啟動兩個mysql,拷貝2份數(shù)據(jù)文件)
#cp -R /var/lib/mysql /var/lib/mysql1
#cp -R /var/lib/mysql /var/lib/mysql2
3、修改權(quán)限
#chmod -R 777 /var/lib/mysql1
#chmod -R 777 /var/lib/mysql2
4、設(shè)置my.cnf
My.cnf如下:
# This file should probably be in your home dir (~/.my.cnf)
# or /etc/my.cnf
# Version 2.1 by Jani Tolonen
[mysqld_multi]
mysqld= /usr/bin/mysqld_safe
mysqladmin = /usr/bin/mysqladmin
user= multi
password= multi
[mysqld1]
socket= /tmp/mysql.sock1
port= 3306
pid-file= /var/lib/mysql1/db.pid1
datadir= /var/lib/mysql1
skip-locking
log-error = /var/lib/mysql1/db1.err
user = mysql
long_query_time = 1
key_buffer = 256M
max_allowed_packet = 200M
table_cache = 512
sort_buffer_size = 2M
read_buffer_size = 2M
myisam_sort_buffer_size = 64M
thread_cache = 32
query_cache_size = 32M
thread_concurrency = 2
max_connections=1000
server-id = 1
character-set-server=utf8
[mysqld2]
socket= /tmp/mysql.sock2
port= 3307
pid-file= /var/lib/mysql2/db.pid2
datadir= /var/lib/mysql2
skip-locking
log-error = /var/lib/mysql2/db2.err
user = mysql
long_query_time = 1
key_buffer = 256M
max_allowed_packet = 200M
table_cache = 512
sort_buffer_size = 2M
read_buffer_size = 2M
myisam_sort_buffer_size = 64M
thread_cache = 32
query_cache_size = 32M
thread_concurrency = 2
max_connections=1000
server-id = 2
character-set-server=utf8
5、啟動mysql
#mysqld_multi start 1-2
6、命令行登錄mysql
#mysql -u root -S /tmp/mysql.sock1 -p登錄第一個mysql
#mysql -u root -S /tmp/mysql.sock2-p登錄第二個mysql
7、關(guān)閉mysql,只有登錄每個mysql,給multi用戶添加權(quán)限后才可以通過mysqld_multi stop 1-2來停止mysql
1)mysql -u root -S /tmp/mysqld.sock1 -p
GRANT SHUTDOWN ON *.* TO 'multi'@'localhost' IDENTIFIED BY 'multi';
2)mysql -u root -S /tmp/mysqld.sock2 -p
GRANT SHUTDOWN ON *.* TO 'multi'@'localhost' IDENTIFIED BY 'multi';
停止:
mysqld_multi stop 1-2(可以通過mysqld_multi stop 1來停止其中的任意個mysql)
8、賦予遠(yuǎn)程登錄權(quán)限
登錄mysql shell,分別在兩個mysql上運(yùn)行一下語句,允許遠(yuǎn)程連接mysql
mysql> UPDATE mysql.user SET Host='%' WHERE Host='localhost' ;
mysql>GRANT ALL PRIVILEGES ON *.* TO root@"%";
mysql> FLUSH PRIVILEGES ;
總結(jié)
以上是生活随笔為你收集整理的一台linux上运行多个mysql_linux下同时运行多个mysql的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 曝T3网约车自燃引燃私家车拒赔!平台:我
- 下一篇: EA竞速大作《F1 22》获专属优化:A