MySQL 5.6版本二進制包多實例(版本2)


MySQL安裝

下載:http://ftp.ntu.edu.tw/MySQL/Downloads/MySQL-5.6/

(1)解壓
tar -zxvf mysql-5.6.46-linux-glibc2.12-x86_64.tar.gz -C /usr/local/

(2)創建軟鏈接
ln -sv /usr/local/mysql-5.6.46-linux-glibc2.12-x86_64 /usr/local/mysql

(3)創建mysql 用戶
useradd -M -s /sbin/nologin mysql

(4)創建目錄結構和授權
mkdir /opt/data/{3306,3307}/ -p
chown -R mysql.mysql /opt/data

(5)添加環境變量
echo 'export PATH=$PATH:/usr/local/mysql/bin' >>  /etc/profile  
export PATH=$PATH:/usr/local/mysql/bin


(6)創建my.cnf文件 nano /etc/my.cnf 
 
[client]   
port=3306   
socket=/opt/data/mysql.sock   

[mysqld_multi]  
user=multi_admin
pass=multi_admin 
mysqld = /usr/local/mysql/bin/mysqld_safe   
mysqladmin = /usr/local/mysql/bin/mysqladmin   
log = /opt/data/mysqld_multi.log  
 
[mysqld]   
user=mysql   
basedir = /usr/local/mysql   
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES  
 
[mysqld3306]   
mysqld=mysqld   
mysqladmin=mysqladmin   
datadir=/opt/data/3306/data   
port=3306    
socket=/opt/data/3306/mysql3306.sock   

max_connections=1000
character-set-server=utf8
innodb_file_per_table=1
lower_case_table_names=1 

key_buffer_size=512M
innodb_buffer_pool_size = 1024M

sort_buffer_size=1M
read_rnd_buffer_size=1M
read_buffer_size=1M
join_buffer_size=1M

max_heap_table_size=256M
tmp_table_size=256M

max_allowed_packet=64M
skip-name-resolve
skip-external-locking
net_buffer_length=512K

long_query_time=3
slow-query-log=On
slow_query_log_file=/opt/data/3306/log/mysql_slow_query.log
log-error = /opt/data/3306/log/error.log 

query_cache_type=on
query_cache_size=64M
query_cache_limit=1M


[mysqld3307]   
mysqld=mysqld   
mysqladmin=mysqladmin   
datadir=/opt/data/3307/data   
port=3307    
socket=/opt/data/3307/mysql3307.sock   

max_connections=1000
character-set-server=utf8
innodb_file_per_table=1
lower_case_table_names=1 

key_buffer_size=512M
innodb_buffer_pool_size = 1024M

sort_buffer_size=1M
read_rnd_buffer_size=1M
read_buffer_size=1M
join_buffer_size=1M

max_heap_table_size=256M
tmp_table_size=256M

max_allowed_packet=64M
skip-name-resolve
skip-external-locking
net_buffer_length=512K

long_query_time=3
slow-query-log=On
slow_query_log_file=/opt/data/3307/log/mysql_slow_query.log
log-error = /opt/data/3307/log/error.log 

query_cache_type=on
query_cache_size=64M
query_cache_limit=1M 

(7)初始化數據庫

/usr/local/mysql/scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/opt/data/3306/data --defaults-file=/etc/my.cnf 
/usr/local/mysql/scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/opt/data/3307/data --defaults-file=/etc/my.cnf 


(8)修改單獨啓動配置
#cd /opt/data/3306/data 
#nano my.cnf

 [client]    
port        = 3306     
socket      = /opt/data/3306/data/mysql3306.sock

[mysqld]    
port        = 3306     
socket      =  /opt/data/3306/data/mysql3306.sock     
datadir     =  /opt/data/3306/data
max_connections=1000
character-set-server=utf8
innodb_file_per_table=1
lower_case_table_names=1 
log_error=/opt/data/3306/data/mysql3306.err 


#cd /opt/data/3307/data 
#nano my.cnf

 [client]    
port        = 3307     
socket      = /opt/data/3307/data/mysql3307.sock

[mysqld]    
port        = 3307     
socket      =  /opt/data/3307/data/mysql3307.sock     
datadir     =  /opt/data/3307/data
max_connections=1000
character-set-server=utf8
innodb_file_per_table=1
lower_case_table_names=1 
log_error=/opt/data/3307/data/mysql3307.err 


(9)啓動多實例

/usr/local/mysql/bin/mysqld_safe --defaults-file=/opt/data/3306/data/my.cnf &
/usr/local/mysql/bin/mysqld_safe --defaults-file=/opt/data/3307/data/my.cnf &


(10)修改密碼
/usr/local/mysql/bin/mysqladmin -u root password "123456" -S /opt/data/3306/data/mysql3306.sock 
/usr/local/mysql/bin/mysqladmin -u root password "123456" -S /opt/data/3307/data/mysql3307.sock

查看進程
netstat -tulnp

(11)登陸數據庫
/usr/local/mysql/bin/mysql -uroot -p -S /opt/data/3306/data/mysql3306.sock 
/usr/local/mysql/bin/mysql -uroot -p -S /opt/data/3307/data/mysql3307.sock 

GRANT SHUTDOWN ON *.* TO 'multi_admin'@'localhost' IDENTIFIED BY 'multi_admin'; FLUSH PRIVILEGES;  # 該賬號用於 mysqld_multi 實例管理
GRANT ALL PRIVILEGES ON *.* TO 'dba_user'@'%' IDENTIFIED BY PASSWORD '*3F4D6E9B7A42AD6D870BBDB137B8C00B097A4AB8' WITH GRANT OPTION; FLUSH PRIVILEGES;

ps -ef | grep mysql 
殺掉mysql 進程


(12)使用mysqld_multi進行多實例管理
啓動全部實例:/usr/local/mysql/bin/mysqld_multi start  
查看全部實例狀態:/usr/local/mysql/bin/mysqld_multi report  
啓動單個實例:/usr/local/mysql/bin/mysqld_multi start 3306  
停止單個實例:/usr/local/mysql/bin/mysqld_multi stop 3306  
查看單個實例狀態:/usr/local/mysql/bin/mysqld_multi report 3306

注:mysqld_multi stop無效問題 
GRANT SHUTDOWN ON *.* TO 'multi_admin'@'localhost' IDENTIFIED BY 'multi_admin'; FLUSH PRIVILEGES;
https://www.cnblogs.com/qizhelongdeyang/p/6292966.html


https://blog.51cto.com/jinlong/2059076
https://blog.csdn.net/weixin_34001430/article/details/89869565
https://www.jianshu.com/p/3bf7fe15dd45

https://www.cnblogs.com/lovelinux199075/p/9118708.html
 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章