這篇文章將為大家詳細(xì)講解有關(guān)MySQL5.7數(shù)據(jù)庫中怎么部署主從架構(gòu),文章內(nèi)容質(zhì)量較高,因此小編分享給大家做個(gè)參考,希望大家閱讀完這篇文章后對相關(guān)知識(shí)有一定的了解。
創(chuàng)新互聯(lián)網(wǎng)站建設(shè)由有經(jīng)驗(yàn)的網(wǎng)站設(shè)計(jì)師、開發(fā)人員和項(xiàng)目經(jīng)理組成的專業(yè)建站團(tuán)隊(duì),負(fù)責(zé)網(wǎng)站視覺設(shè)計(jì)、用戶體驗(yàn)優(yōu)化、交互設(shè)計(jì)和前端開發(fā)等方面的工作,以確保網(wǎng)站外觀精美、成都網(wǎng)站制作、成都網(wǎng)站建設(shè)、外貿(mào)營銷網(wǎng)站建設(shè)易于使用并且具有良好的響應(yīng)性。
1、 創(chuàng)建mysql用戶:useradd -m -d /home/mysql mysql
2、 上傳mysql-5.7.22-linux-glibc2.12-x86_64.tar.gz安裝包到/app目錄下。
附官方下載鏈接:https://dev.mysql.com/downloads/file/?id=476936
3、 解壓安裝包到/app目錄下tar -zxvf mysql-5.7.22-linux-glibc2.12-x86_64.tar.gz
4、 將解壓完的安裝包重命名為:mysql5722
mv mysql-5.7.22-linux-glibc2.12-x86_64 mysql5722
5、 進(jìn)入mysql5722目錄下創(chuàng)建data、logs目錄。
cd mysql5722/ mkdir data && mkdir logs
6、 進(jìn)入剛剛創(chuàng)建的logs目錄下創(chuàng)建日志文件
cd logs touch error.log && touch general.log 授權(quán)/app/mysql5722目錄屬主屬組為mysql chown -R mysql:mysql /app/mysql5722
7、 進(jìn)入mysql的bin目錄下進(jìn)行初始化設(shè)置:
cd ../bin/ ./mysqld --initialize --user=mysql --basedir=/app/mysql5722/ --datadir=/app/mysql5722/data
注意:初始化的時(shí)候會(huì)提示root用戶的默認(rèn)密碼記得保存,首次登陸需要。
8、 創(chuàng)建mysql配置文件:
cd /etc/&& mv my.cnf my.cnf.bak
新建配置文件:touch my.cnf,內(nèi)容如下:
Master節(jié)點(diǎn)配置文件內(nèi)容:
[mysqld] server-id=1 log_bin=master-bin log_bin_index=master-bin.index binlog_do_db=mysql expire_logs_days=7 #skip-grant-tables lower_case_table_names=1 explicit_defaults_for_timestamp port = 3306 datadir = /app/mysql5722/data socket = /app/mysql5722/mysql.sock user = mysql symbolic-links = 0 basedir = /app/mysql5722 big-tables character-set-server = utf8 #general-log-file = /app/mysql5722/logs/general.log language = /app/mysql5722/share lc-messages-dir = /app/mysql5722/share general-log = on #GENERAL_LOG=ON general-log-file = /app/mysql5722/logs/mysqld.log slow-query-log = 1 pid-file = /app/mysql5722/mysql.pid slow-query-log-file = /app/mysql5722/logs/mysqld_slow.log slave-load-tmpdir = /app/mysql5722/tmp plugin-dir = /app/mysql5722/lib/plugin max_connections = 1000 #innodb #innodb_log_file_size=512M #innodb_buffer_pool_size=2G [mysqld_safe] log-error=/app/mysql5722/logs/mysql_error.log pid-file=/app/mysql5722/mysql.pid [client] port = 3306 socket=/app/mysql5722/mysql.sock user=mysql
9、 配置啟動(dòng)命令:
cd /app/mysql5722/support-files/ cp mysql.server /etc/init.d/mysqld cd /etc/init.d/
修改mysqld配置文件內(nèi)容添加如下兩行信息:
10、 配置開機(jī)啟動(dòng)
chkconfig --add mysqld chkconfig mysqld on chown -R mysql:mysql mysql5722/
11、 啟動(dòng)mysql數(shù)據(jù)庫
service mysqld start
12、 登錄mysql
./mysql -uroot -p'LRabR;xaS9lh'
修改root默認(rèn)密碼,不然無法執(zhí)行sql:
./mysql -uroot -p'LRabR;xaS9lh' 修改root默認(rèn)密碼,不然無法執(zhí)行sql: alter user user() identified by "Abcd@123";修改root用戶密碼 flush privileges;刷新 user mysql; create user 'master'@'%' identified by 'Abcd@123'; grant replication slave on *.* to 'master'@'%'; flush privileges show master status;
備slave節(jié)點(diǎn)配置文件:
[mysqld] server-id=2 relay_log=slave-relay-bin relay_log_index=slave-relay-bin.index basedir=/app/mysql5722 datadir=/app/mysql5722/data socket=/app/mysql5722/mysql.sock user=mysql character-set-server=utf8 lower_case_table_names=1 explicit_defaults_for_timestamp port=3306 general-log=1 general-log-file=/app/mysql5722/logs/general.log slow-query-log=1 long_query_time=1 slow_query_log_file=/app/mysql5722/slowquery.log pid-file=/app/mysql5722/mysql.pid slave-load-tmpdir=/app/mysql5722/slavetmp max_connections=1000 # Disabling symbolic-links is recommended to prevent assorted security risks symbolic-links=0 #skip-grant-tables [mysqld_safe] log-error=/app/mysql5722/logs/error.log pid-file=/app/mysql5722/mysql.pid [client] port=3306 socket=/app/mysql5722/mysql.sock user=mysql
保存后重啟從節(jié)點(diǎn)mysql。
備機(jī):(slave)上配置:
登錄mysql后執(zhí)行:
user mysql; change master to master_host='10.1.60.71',master_user='master',master_password='abcd@123',master_log_file='master-bin.000001',master_log_pos=154; show slave status\G;
保證如下兩個(gè)值都為YES說明主從復(fù)制已經(jīng)配置成功,需要注意的是兩臺(tái)服務(wù)器的防火墻策略,網(wǎng)絡(luò)必須是互通的。
Slave_IO_Running:YES Slave_SQL_Running:YES
關(guān)于MySQL5.7數(shù)據(jù)庫中怎么部署主從架構(gòu)就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學(xué)到更多知識(shí)。如果覺得文章不錯(cuò),可以把它分享出去讓更多的人看到。