MySql(18)——Linux MySQL主从配置
MySQL 主从配置
Author:xushuyi
参照技术:http://www.cnblogs.com/kevingrace/p/6256603.html
1. 主从数据库
1、主库:192.168.56.100
2、从库:192.168.56.102
3、创建主从数据库一定要保证主从数据库字符集编码的一致性,否则主从同步数据会发生异常。
因主从数据字符集编码不一致,常见的问题如下:
1. Column 1 of table 'xxx' cannot be converted from type 'varchar(33)' to type 'varchar(11)'
解决方案:http://www.cnblogs.com/wzbz/p/6825761.html
2. 一定要调整主从数据库字符集编码一致性
4、创建表时一定要加上字符集编码 utf8 设置,避免主从数据同步异常问题,其实遇到问题类同 3
1、修改数据表字符集:ALTER TABLE transfervouchers CONVERT TO CHARACTER SET utf8;
2、创建表 设置字符集
create table jpgxhealthvalrecordhistory (ID bigint not null auto_increment comment '主键ID',activityid bigint comment '活动ID',userid bigint comment '用户ID',activitylotteryid bigint comment '活动抽奖ID',activityawardid bigint comment '活动奖品ID',contributehealthvalue bigint comment '已贡献健康值',createtime timestamp comment '创建时间',modifytime timestamp comment '修改时间',primary key (ID) )CHARACTER SET utf8; alter table jpgxhealthvalrecordhistory comment '奖品贡献健康值历史记录表';
4、主库一旦重启,主库对应二进制文件发生改变,从库需要重新指向主库新的二进制文件
master_host='192.168.56.100',master_user='slave',master_password='Sino@slave12345', master_log_file='mysql-bin.000002',master_log_pos=400;
2.主库配置:
#vi /etc/my.cnf
[mysqld]
log-bin=mysql-bin //[必须]启用二进制日志
server-id=1100 //[必须]服务器唯一ID,默认是1,一般取IP最后一段
binlog-do-db=imove //需要同步的数据库。如果是多个同步库,就以此格式另写几行即可。如果不指明对某个具体库同步,就去掉此行,表示同步所有库(除了ignore忽略的库)
binlog-ignore-db=sys //#不同步mysql系统数据库。如果是多个不同步库,就以此格式另写几行;也可以在一行,中间逗号隔开
登录主库MySQL
#cd /usr/local/mysql
#./bin/mysql -u root -p
mysql> create user slave identified by 'Sino@slave12345';
mysql> grant all on *.* to slave@'192.168.56.102' identified by 'Sino@slave12345';
mysql> exit;
重启主库MySQL:
#/etc/init.d/mysql restart;
#show master status;
3.从库配置:
vi /etc/my.cnf
log-bin=mysql-bin //[必须]启用二进制日志
server-id=102 //[必须]服务器唯一ID,默认是1,一般取IP最后一段
replicate-do-db=imove //需要同步的数据库名。如果不指明同步哪些库,就去掉这行,表示所有库的同步(除了ignore忽略的库)
replicate-ignore-db=sys //不同步mysql系统数据库
slave-skip-errors=all //跳过所有的错误错误,继续执行复制操作; 这个配置最好不要加上,遇到问题就要解决问题,不能直接跳过
重启主库MySQL:
#/etc/init.d/mysql restart;
之后进入从库MySQL 修改master配置:
登录主库MySQL
#cd /usr/local/mysql
#./bin/mysql -u root -p
mysql> change master to master_host='192.168.56.100',master_user='slave',master_password='Sino@slave12345', master_log_file='mysql-bin.000002',master_log_pos=400;
查看从库master是否配置成功:
mysql> show slave status\G;
======------------------------------可能使用的命令:在更改 master 的时候------------============
STOP SLAVE IO_THREAD FOR CHANNEL '';
START SLAVE IO_THREAD FOR CHANNEL '';
上图可以看到: Slave_IO_running: NO
Salve_SQL_Running: NO
需要对slave mysql 进行设置:
先关闭slave
mysql> stop slave
之后进行设置:
mysql> set global sql_slave_skip_counter =1 ;
之后再开启:
mysql> start slave
mysql> show slave status\G
OK.
异常情况:
这个异常情况说明,从库同步主库二进制文件的位置不正确。
解决:http://www.linuxidc.com/Linux/2012-02/54729.htm
将binlog二进制文件转换为txt文件
说明从库同步主库的二进制文件应该从 123 行开始。
登录从库MySQL:
mysql> stop slave;
mysql> change master to master_log_file='mysql-bin.000002',master_log_pos=123;
mysql> start slave;
mysql> show slave status\G;
4.验证主从同步
之后登录 master mysql, 进行如下操作:
create database hi_db;
use hi_db;
create table hi_tb(id int(3),name char(10));
insert into hi_tb values(001,'bobu');
show databases;
之后登录slave mysql:
show databases;
可以看到:
转载于:https://www.cnblogs.com/xushuyi/articles/7699024.html
MySql(18)——Linux MySQL主从配置相关推荐
- MySQL编译安装及主从配置
说明:本实验配置以Cenos6.6和MySQL5.6.35为例 一.编译安装MySQL 1.避免在安装过程中出现问题,先安装系统依赖包 yum install apr autoconf automak ...
- MYSQL在centos上主从配置
主从配置理论传送门:http://blog.csdn.net/hguisu/article/details/7325124 具体配置方案: 一:MYSQL主从配置 1.1 部署环境 主(maste ...
- mysql 5.5数据库主从配置步骤详解
上次给大家介绍了mysql 5.1主从搭建配置教程,这次我们来实现mysql 5.5的主从复制,其实大体上配置是差不多的,只有点细微的差别. 系统:centos 5.x 需要的软件包:mysql-5. ...
- Mac单机多实例Mysql(8.0.16)主从配置
一 .MySQL多实例部署方式 1)使用多个配置文件启动不同的进程来实现多实例,这种方式的优势逻辑简单,配置简单,缺点是管理起来不太方便: 2)通过官方自带的mysqld_multi使用单独的配置文件 ...
- mysql 5.7.20主从配置_mysql-5.7.20源码安装 + 多实例 + 主从复制
版本:MySQL-5.7.20 1.更换yum源 wget -O /etc/yum.repos.d/eprl.repo http://mirrors.aliyun.com/repo/epel-6.re ...
- linux redis 主从配置,redis集群(主从配置)
redis是一个key-value存储系统.和Memcached类似,它支持存储的value类型相对更多,包括string(字符串). list(链表).set(集合)和zset(有序集合).这些数据 ...
- mysql读写分离,主从配置
2019独角兽企业重金招聘Python工程师标准>>> 一个完整的mysql读写分离环境包括以下几个部分: 应用程序client database proxy database集群 ...
- mysql主从复制过滤_mysql主从配置及复制过滤
前提:为了方便搭建,我直接使用了lnmp搭建环境,mysql版本使用5.6版本,数据库为test(在主服务器上创建数据库后备份拉到从服务器) 部署LNMP ( 安装详情请见:https://lnmp. ...
- mysql 5.7.20主从配置_mysql5.7.20免安装版配置方法图文教程
{"moduleinfo":{"card_count":[{"count_phone":1,"count":1}],&q ...
- mysql主原理_mysql 主从配置实现原理
MySQL 本身通过 show slave status 提供了 Seconds_Behind_Master ,用于衡量主备之间的复制延迟,但是 今天碰到了一个场景,发现 Seconds_Behind ...
最新文章
- Rowhammer漏洞致“比特位翻转”,如何解决?
- python库——h5py入门讲解
- 外部链接linux下的mysql,Linux下mysql实现远程链接
- windows10下载
- 整理一篇Linux drm显示系统的文章
- 离线安装python环境
- 数据清洗工具OpenRefine
- java 远程调试 端口_java – 远程调试:在端口8787上没有连接到OpenJDK 11上的Wildfly 14...
- sqlserver日期函数 dateadd,datediff ,datepart ,datename,convert
- PHP 抽象工厂模式(Kit模式)
- WinDbg蓝屏分析入门
- 如何用U盘安装Windows操作系统
- ajax上传图片springmvc,springmvc ajax上传图片(jquery)
- [辅助工具]	【羽睿】Proxmark3 Easy Gui 4.0 5.0 5.1加强版 PM3GUI_X稳定优化版
- windows 2012下安装.NET框架时出现组件的文件跟组件清单中的验证信息不匹配,无法安装
- 中国保险业过去五年基础数据分析
- 采购月度业绩贡献度报表
- Pytorch应用训练好的模型
- js导出科学计数法_怎么让js不自动转换成科学计数法
- Windows11 Microsoft store打不开