MySQL5.7数据库中怎么部署主从架构
这篇文章将为大家详细讲解有关MySQL5.7数据库中怎么部署主从架构,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。
1、 创建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
mvmysql-5.7.22-linux-glibc2.12-x86_64mysql5722
5、 进入mysql5722目录下创建data、logs目录。
cdmysql5722/mkdirdata&&mkdirlogs
6、 进入刚刚创建的logs目录下创建日志文件
cdlogstoucherror.log&&touchgeneral.log授权/app/mysql5722目录属主属组为mysqlchown-Rmysql:mysql/app/mysql5722
7、 进入mysql的bin目录下进行初始化设置:
cd../bin/./mysqld--initialize--user=mysql--basedir=/app/mysql5722/--datadir=/app/mysql5722/data
注意:初始化的时候会提示root用户的默认密码记得保存,首次登陆需要。
8、 创建mysql配置文件:
cd/etc/&&mvmy.cnfmy.cnf.bak
新建配置文件:touch my.cnf,内容如下:
Master节点配置文件内容:
[mysqld]server-id=1log_bin=master-binlog_bin_index=master-bin.indexbinlog_do_db=mysqlexpire_logs_days=7#skip-grant-tableslower_case_table_names=1explicit_defaults_for_timestampport=3306datadir=/app/mysql5722/datasocket=/app/mysql5722/mysql.sockuser=mysqlsymbolic-links=0basedir=/app/mysql5722big-tablescharacter-set-server=utf8#general-log-file=/app/mysql5722/logs/general.loglanguage=/app/mysql5722/sharelc-messages-dir=/app/mysql5722/sharegeneral-log=on#GENERAL_LOG=ONgeneral-log-file=/app/mysql5722/logs/mysqld.logslow-query-log=1pid-file=/app/mysql5722/mysql.pidslow-query-log-file=/app/mysql5722/logs/mysqld_slow.logslave-load-tmpdir=/app/mysql5722/tmpplugin-dir=/app/mysql5722/lib/pluginmax_connections=1000#innodb#innodb_log_file_size=512M#innodb_buffer_pool_size=2G[mysqld_safe]log-error=/app/mysql5722/logs/mysql_error.logpid-file=/app/mysql5722/mysql.pid[client]port=3306socket=/app/mysql5722/mysql.sockuser=mysql
9、 配置启动命令:
cd/app/mysql5722/support-files/cpmysql.server/etc/init.d/mysqldcd/etc/init.d/
修改mysqld配置文件内容添加如下两行信息:
10、 配置开机启动
chkconfig--addmysqldchkconfigmysqldonchown-Rmysql:mysqlmysql5722/
11、 启动mysql数据库
servicemysqldstart
12、 登录mysql
./mysql-uroot-p'LRabR;xaS9lh'
修改root默认密码,不然无法执行sql:
./mysql-uroot-p'LRabR;xaS9lh'修改root默认密码,不然无法执行sql:alteruseruser()identifiedby"Abcd@123";修改root用户密码flushprivileges;刷新usermysql;createuser'master'@'%'identifiedby'Abcd@123';grantreplicationslaveon*.*to'master'@'%';flushprivilegesshowmasterstatus;
备slave节点配置文件:
[mysqld]server-id=2relay_log=slave-relay-binrelay_log_index=slave-relay-bin.indexbasedir=/app/mysql5722datadir=/app/mysql5722/datasocket=/app/mysql5722/mysql.sockuser=mysqlcharacter-set-server=utf8lower_case_table_names=1explicit_defaults_for_timestampport=3306general-log=1general-log-file=/app/mysql5722/logs/general.logslow-query-log=1long_query_time=1slow_query_log_file=/app/mysql5722/slowquery.logpid-file=/app/mysql5722/mysql.pidslave-load-tmpdir=/app/mysql5722/slavetmpmax_connections=1000#Disablingsymbolic-linksisrecommendedtopreventassortedsecurityriskssymbolic-links=0#skip-grant-tables[mysqld_safe]log-error=/app/mysql5722/logs/error.logpid-file=/app/mysql5722/mysql.pid[client]port=3306socket=/app/mysql5722/mysql.sockuser=mysql
保存后重启从节点mysql。
备机:(slave)上配置:
登录mysql后执行:
usermysql;changemastertomaster_host='10.1.60.71',master_user='master',master_password='abcd@123',master_log_file='master-bin.000001',master_log_pos=154;showslavestatus\G;
保证如下两个值都为YES说明主从复制已经配置成功,需要注意的是两台服务器的防火墙策略,网络必须是互通的。
Slave_IO_Running:YESSlave_SQL_Running:YES
关于MySQL5.7数据库中怎么部署主从架构就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。