MySQL單機多執行個體部署

來源:互聯網
上載者:User

標籤:mysql單機多執行個體部署

一、MySQL多執行個體部署

版本:5.7.18

1.軟體安裝

# tar xf mysql-5.7.18-linux-glibc2.5-x86_64.tar.gz -C /usr/local# cd /usr/local# chown -R root.root mysql-5.7.18-linux-glibc2.5-x86_64# ln -sv mysql-5.7.18-linux-glibc2.5-x86_64 mysql5.7.18# mkdir /data/{mydata3307,mydata3308}# chown -R mysql.mysql /data/mydata33*

2.提供多執行個體服務啟動指令碼

# cd /usr/local/mysql5.7.18# cp support-files/mysqld_multi.server /etc/init.d/mysqld_multi# chmod +x /etc/init.d/mysqld_multi# chkconfig --add mysqld_multi# vi /etc/init.d/mysqld_multiexport PATH=$PATH:/usr/local/mysql5.7.18/binbasedir=/usr/local/mysql5.7.18bindir=/usr/local/mysql5.7.18/bin

3.提供設定檔

# cat /etc/my.cnf[mysql]#password = 123456#prompt = [\\[email protected]\\h][\\d]>\\_socket          = /tmp/mysql5.7.18.sock[client]#password = 123456#prompt = [\\[email protected]\\h][\\d]>\\_socket          = /tmp/mysql5.7.18.sock[mysqld_multi]mysqld = /usr/local/mysql5.7.18/bin/mysqld_safemysqladmin =/usr/local/mysql5.7.18/bin/mysqladminlog =/data/mydata3307/mysqld_multi.log# 每個執行個體都設定統一管理密碼,方便使用服務指令碼停止執行個體user = rootpass = 123456#初始化需要[mysqld]段配置,否則初始化的時候載入不到[mysqld3307]及[mysqld3308]段中關於設定獨立undo資料表空間及共用資料表空間大小[mysqld]innodb_buffer_pool_size = 4096M#innodb_buffer_pool_size = 16384Minnodb_undo_log_truncate=ONinnodb_undo_tablespaces = 2innodb_data_file_path=ibdata1:1G:autoextend[mysqld3307]innodb_buffer_pool_size = 4096M#innodb_buffer_pool_size = 16384Mport = 3307socket          = /data/mydata3307/mysql5.7.18.sockskip-external-lockingkey_buffer_size = 256Mmax_allowed_packet = 10Mtable_open_cache = 256sort_buffer_size = 1Mread_buffer_size = 1Mread_rnd_buffer_size = 4Mmyisam_sort_buffer_size = 16Mthread_cache_size = 4max_connections=1500character_set_server=utf8group_concat_max_len=65535log_bin_trust_function_creators=1log_queries_not_using_indexes = ONlog_throttle_queries_not_using_indexes = 2interactive_timeout = 600wait_timeout = 600connect_timeout = 10expire_logs_days = 30replicate-ignore-db=information_schemareplicate-ignore-db=performance_schemareplicate-ignore-db=mysqlreplicate-ignore-db=syslog_timestamps=SYSTEMinnodb_print_all_deadlocks=1basedir=/usr/local/mysql5.7.18datadir=/data/mydata3307innodb_undo_log_truncate=ONinnodb_undo_tablespaces = 2innodb_data_file_path=ibdata1:1G:autoextendcore_filesync_binlog = 0innodb_flush_log_at_trx_commit = 2##Master#log-bin=mysql-binlog-bin=/data/mydata3307/mysql-bin#binlog_format=mixedbinlog_format=rowserver-id=3307lower_case_table_names = 1skip-name-resolveinnodb_file_per_table=1long_query_time=2slow_query_log=1slow_query_log_file=/data/mydata3307/slow-query.logsql_mode=‘STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION‘#slaveslave-parallel-type=LOGICAL_CLOCK#slave-parallel-workers=16slave-parallel-workers=4master_info_repository=TABLErelay_log_info_repository=TABLErelay_log_recovery=ONslave_preserve_commit_order=1log-slave-updates=trueslave_skip_errors=‘1032,1062‘relay_log=/data/mydata3307/localhost-relay-bin####gtid######gtid_mode = ONenforce_gtid_consistency = ONmaster_verify_checksum = 1slave_sql_verify_checksum = 1[mysqld3308]innodb_buffer_pool_size = 2048M#innodb_buffer_pool_size = 16384Mport = 3308socket          = /data/mydata3308/mysql5.7.18.sockskip-external-lockingkey_buffer_size = 256Mmax_allowed_packet = 10Mtable_open_cache = 256sort_buffer_size = 1Mread_buffer_size = 1Mread_rnd_buffer_size = 4Mmyisam_sort_buffer_size = 16Mthread_cache_size = 4max_connections=1500character_set_server=utf8group_concat_max_len=65535log_bin_trust_function_creators=1log_queries_not_using_indexes = ONlog_throttle_queries_not_using_indexes = 2interactive_timeout = 600wait_timeout = 600connect_timeout = 10expire_logs_days = 30replicate-ignore-db=information_schemareplicate-ignore-db=performance_schemareplicate-ignore-db=mysqlreplicate-ignore-db=syslog_timestamps=SYSTEMinnodb_print_all_deadlocks=1basedir=/usr/local/mysql5.7.18datadir=/data/mydata3308innodb_undo_log_truncate=ONinnodb_undo_tablespaces = 2innodb_data_file_path=ibdata1:1G:autoextendcore_filesync_binlog = 0innodb_flush_log_at_trx_commit = 2##Master#log-bin=mysql-binlog-bin=/data/mydata3308/mysql-bin#binlog_format=mixedbinlog_format=rowserver-id=3308lower_case_table_names = 1skip-name-resolveinnodb_file_per_table=1long_query_time=2slow_query_log=1slow_query_log_file=/data/mydata3308/slow-query.logsql_mode=‘STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION‘#slaveslave-parallel-type=LOGICAL_CLOCK#slave-parallel-workers=16slave-parallel-workers=4master_info_repository=TABLErelay_log_info_repository=TABLErelay_log_recovery=ONslave_preserve_commit_order=1log-slave-updates=trueslave_skip_errors=‘1032,1062‘relay_log=/data/mydata3308/localhost-relay-bin####gtid######gtid_mode = ONenforce_gtid_consistency = ONmaster_verify_checksum = 1slave_sql_verify_checksum = 1

4.初始化執行個體

執行個體3307# cd /usr/local/mysql5.7.18/bin# ./mysqld --user=mysql --basedir=/usr/local/mysql5.7.18/ --datadir=/data/mydata3307/ --initialize --initialize-insecure執行個體3308# ./mysqld --user=mysql --basedir=/usr/local/mysql5.7.18/ --datadir=/data/mydata3308/ --initialize --initialize-insecure

5.啟動服務

# service mysqld_multi start# service mysqld_multi reportReporting MySQL serversMySQL server from group: mysqld3307 is runningMySQL server from group: mysqld3308 is running# ss -ntpl | grep mysqldLISTEN     0      128                      :::3307                    :::*      users:(("mysqld",8004,29))LISTEN     0      128                      :::3308                    :::*      users:(("mysqld",8003,29))多執行個體啟動成功

6.設定管理帳號密碼

預設初始化密碼為空白,提示輸入密碼時,直接斷行符號# mysqladmin -uroot -p password 123456 -S /data/mydata3307/mysql5.7.18.sock# mysqladmin -uroot -p password 123456 -S /data/mydata3308/mysql5.7.18.sock

7.停止執行個體

# service mysqld_multi stop 3307# service mysqld_multi reportReporting MySQL serversMySQL server from group: mysqld3307 is not runningMySQL server from group: mysqld3308 is running

注意:

多執行個體服務啟動指令碼啟動報錯

[[email protected] mysql5.7.18]# service mysqld_multi start

WARNING: my_print_defaults command not found.

Please make sure you have this command available and

in your path. The command is available from the latest

MySQL distribution.

ABORT: Can‘t find command ‘my_print_defaults‘.

This command is available from the latest MySQL

distribution. Please make sure you have the command

in your PATH.

修改/etc/init.d/mysqld_multi

export PATH=$PATH:/usr/local/mysql5.7.18/bin


本文出自 “linux之路” 部落格,請務必保留此出處http://hnr520.blog.51cto.com/4484939/1923890

MySQL單機多執行個體部署

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.