如何实现Mysql的分布式部署
来源:转载
发布时间:2018-07-03 17:51:19
阅读量:1127
Mysql主从实验
主从的概念
主 – 主机,负责对数据库的读写操作,数据类型主要是innordb
从 – 从机,负责对数据库的读操作,数据库类型主要是myisam
主从复制即是从机拷贝主机的数据,而用户对数据库的读操作只通过从机即可,因为myisam的的强大之处在于读操作,一个主机可以配置多个从机。
操作步骤
关闭selinuxs
#以下针对两台服务器同时操作chkconfig selinux off
#关闭开机启动setenforce 0 #关闭selinuxvim /etc/selinux/config #编辑配置文件SELINUX=disabled 修改这一行chkconfig iptables off
#关闭防火墙的开机启动service iptables stop #关闭防火墙
getenforce #检测是否关闭1234567891011121314151617181920
修改主服务器的配置
vim /etc/my.cnf1
修改如下行
[mysqld]#添加在mysqld模块下log-bin=mysql-bin #要开启server-id=5 #建议改成服务器ip地址的后一位#master端:binlog-do-db= python #二进制需要同步的数据库名binlog-ignore-db=mysql #避免同步 mysql 用户配置,以免不必要的麻烦#slave端:replicate-do-db= python #(do这个就是直接指定的意思) replicate-ignore-db=mysql#重启服务器service mysqld restart1234567891011121314151617
2.数据库结构一致
mysql -uroot -p
#连接两台服务器的mysql,进行相同的操作。create database python;use python;
#master端:create table user (
id int primary key auto_increment,
username varchar(30))engine=innodb;#slave端:create table user (
id int primary key auto_increment,
username varchar(30))engine=myisam;123456789101112131415161718
3.查看主数据库信息
#进入mysql mysql -uroot -p #连接主服务器
#查看主服务器状态show master status\G*************************** 1. row *************************** File: mysql-bin.000012 #master_log_file=mysql-bin.000012
Position: 554 #pos master_log_pos= 554
Binlog_Do_DB: python
Binlog_Ignore_DB: mysql
Executed_Gtid_Set: 123456789
4.配置从服务器
mysql -uroot -p #连接从服务器#查看监听语句? change master;
? change#stop slave 必须是从服务器关闭的状态下change master to
master_host='10.11.51.85',
master_user='ruidong',
master_password='123456',
master_log_file='mysql-bin.000012', #需要做交换的文件名
master_log_pos=723;
start slave; #开启从服务器
show slave status \G;
#查看状态#==================#当看到Slave_IO_Running: Yes
Slave_SQL_Running: Yes#===================
原文地址https://blog.csdn.net/qq_41768400/article/details/80774848