mysql 主从 表配置文件_Mysql数据库主从配置

一、为什么要使用数据库主从架构

一个网站损耗资源最厉害的就是数据库,最易崩溃的也是数据库,而数据库崩溃带来的后果是非常严重的。数据库分为读和写操作,在实际的应用中,读操作的损耗远比写操作多太多,因此读操作是引起数据库崩溃的主因,所以我们把数据分为主从库,主库负责写操作,从库负责读操作。

二、数据库主从配置-主机

复制数据表至从库,保证两个数据库之间的数据表完全一致。

编辑配置文件my.cnf

#在mysld下面加入如下行

server-id=106#一般根据IP最后一位

log-bin=mysql-bin #主机必须打开,从库就是根据bin的二进制文件来读取主库操作记录

binlog-do-db=test #需要备份的数据库名,如果需要备份多个数据库,重复设置这个选项即可

binlog-ignore-db=mysql #不需要备份的数据库名,如果需要备份多个数据库,重复设置这个选项即可

log-slave-updates #这个参数一定要加上,否则不会给更新的记录到二进制文件里

slave-skip-errors #是跳过错误,继续执行复制操作

重启数据库 service mysqld restart

显示主库信息 show master status

2cf101ec2de4c54d493b2ebde85448a2.png

6.建立用户

grant replication slave on *.* to slave@'192.168.1.%' identified by '123456';

可在从机上做连接测试 mysql -h 主库IP -u root -p

7.锁主库表(可省略,主要防止在写从库配置时,主表被改动)

flush tables with read lock;

三、数据库主从配置-从机

1.编辑配置文件my.cnf

#在mysld下面加入如下行

server-id=103#一般根据IP最后一位

log-bin=mysql-bin

master-host=192.168.1.106#主机IP

master-user=slave #连接用户

master-password=123456#密码

master-port=3306#端口

replicate-do-db=test #需要备份的数据库

replicate-ignore-db=mysql #忽略的数据库

master-connect-retry=60#如果从服务器发现主服务器断掉,重新连接的时间差

log-slave-updates #这个参数一定要加上,否则不会给更新的记录到二进制文件里

slave-skip-errors #是跳过错误,继续执行复制操作

2.重启数据库service mysqld restart

3.查看slave状态 show slave status  (注:slave_IO_Running 以及 slave_SQL_Running 两列的值都是Yes,表明slave的IO以及sq线程都在运行)

4.解锁主库表(若之前没有锁主库表,可忽略,在主机完成)

unlock tables

至此,主从库搭建完成,可在主库插入数据进行测试

常见错误:

如果发现slave_IO_Running以及slave_SQL_Running的值为No,在从机上执行如下操作

slave stop #关闭从库

reset slave #重设从库

change master to master_host='主机IP',master_user='slave',master_password='123123',master_port='3306',master_log_file='mysql-bin.000012',master_log_pos='327';

slave start;

show slave status;

ps:在主服务器中,主要是以写数据为主,建议使用InnoDB数据引擎 ,在从服务器中,建议使用MyISAM数据引擎。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值