假設伺服器之前有一個3306的執行個體在運作了,我們要再添加一個3316端口的執行個體。
直接編輯 /etc/my.cnf ,添加如下内容(紅色部分是後添加的配置項):
[client]
user= root
socket= /tmp/mysql.sock
port= 3306
[mysql]
prompt= '[\d] > '
[mysqld]
datadir=/bdata/data/nowdb2
user=mysql
character-set-server= utf8
default_storage_engine= InnoDB
transaction_isolation = READ-COMMITTED
skip_name_resolve= ON
skip_external_locking
query_cache_type= OFF
query_cache_size= 0
server-id= 11
log-bin= mysql.bin
binlog_format= ROW
log_error= /bdata/data/nowdb2/error.log
innodb_file_per_table = ON
[mysqld_multi]
mysqld = /usr/local/mysql/bin/mysqld_safe
log = /var/log/mysqld_multi.log
[mysqld2]
datadir=/data/mysql2
socket = /tmp/mysql2.sock
port = 3316
character-set-server = utf8
default_storage_engine = InnoDB
transaction_isolation =READ-COMMITTED
skip_name_resolve = ON
server-id = 106
log-bin = mysql-bin
slow_query_log = ON
slow_query_log_file = /data/mysql2/localhost_slow.log
long_query_time = 5
log_error = /data/mysql2/error.log
innodb_flush_log_at_trx_commit = 1
sync_binlog = 1
innodb_support_xa = 1
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
symbolic-links=0
relay_log_info_repository = table
master_info_repository = table
relay_log_recovery = ON
[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld.pid
[mysqldump]
quick
max_allowed_packet= 64M
初始化3316執行個體:
/usr/local/mysql/scripts/mysql_install_db--user=mysql --basedir=/usr/local/mysql/ --datadir=/data/mysql2/
啟動3316執行個體:
mysqld_multireport
mysqld_multistart 3316 即可啟動3316執行個體。
同樣的方法,可以再配置其他的mysql執行個體。
關閉的話,建議使用mysqladmin 即可。
注意,mysqld_mulit和原來的mysqld的啟動停止沒有任何關系。我們可以關閉/etc/init.d/mysqld,對mysqld_multi啟動的執行個體沒有任何影響。
本文轉自 lirulei90 51CTO部落格,原文連結:http://blog.51cto.com/lee90/1945542,如需轉載請自行聯系原作者