CentOS6.5搭建MySQL5.1主从复制
环境:
mysql> select version();
+------------+
| version() |
+------------+
| 5.1.73-log |
+------------+
1 row in set (0.00 sec)
[root@10-4-14-168 ~]# cat /etc/redhat-release
CentOS release 6.5 (Final)
1:已经事先购买了两台云主机
10.4.14.168 101.69.178.208 [联通] Master
10.4.5.9 101.69.178.219 [联通] Slave
2:分别安装MySQL
#yum install mysql-server –enablerepo=remi
#yum install mysql-devel
3:查看MySQL安装情况
[root@10-4-14-168 ~]# rpm -qa | grep mysql*
mysql-libs-5.1.73-3.el6_5.x86_64
mysql-server-5.1.73-3.el6_5.x86_64
mysql-devel-5.1.73-3.el6_5.x86_64
4:启动MySQL
5:登陆MySQL并且修改密码并且删除空用户
mysql> UPDATE mysql.user SET password = PASSWORD('ge0513.mysql') -> WHERE user = 'root';
Query OK, 3 rows affected (0.00 sec)
Rows matched: 3 Changed: 3 Warnings: 0mysql> SELECT user,host,password FROM mysql.user;
+------+-------------+-------------------------------------------+
| user | host | password |
+------+-------------+-------------------------------------------+
| root | localhost | *7AE39BE5035D5C32361400FF7DEDD757AA76896A |
| root | 10-4-14-168 | *7AE39BE5035D5C32361400FF7DEDD757AA76896A |
| root | 127.0.0.1 | *7AE39BE5035D5C32361400FF7DEDD757AA76896A |
| | localhost | |
| | 10-4-14-168 | |
+------+-------------+-------------------------------------------+
5 rows in set (0.00 sec)
mysql> DROP user ''@localhost;
Query OK, 0 rows affected (0.00 sec)mysql> DROP user ''@'10-4-14-168';
Query OK, 0 rows affected (0.00 sec)
6 :主库需改配置文件,在/etc/my.cnf中添加
port = 3306
log_bin = /var/lib/mysql/mysql-binlog
server-id = 1 //只要主从不一样就行
binlog_do_db = test//要做同步的数据库名字,可以是多个数据库,之间用分号分割。
从库的配置文件中添加
server-id = 2
master-host = 10.4.14.168
master-user = gechong
master-password = gechong
master-port = 3306
master-connect-retry = 5
replicate-do-db = test
分别重启服务,登陆数据库。
7:主库上创建复制用户
GRANT REPLICATION SLAVE,REPLICATION CLIENT ON *.* TO gechong@'%' IDENTIFIED BY 'gechong';
8:在主库上执行
mysql> show master status;
+---------------+----------+--------------+------------------+
| File | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+---------------+----------+--------------+------------------+
| binlog.000003 | 412 | | |
+---------------+----------+--------------+------------------+
1 row in set (0.00 sec)
从库上执行
mysql> show slave status\G
*************************** 1. row ***************************Slave_IO_State: Waiting for master to send eventMaster_Host: 10.4.14.168Master_User: gechongMaster_Port: 3306Connect_Retry: 5Master_Log_File: mysql-binlog.000001Read_Master_Log_Pos: 325Relay_Log_File: mysqld-relay-bin.000002Relay_Log_Pos: 473Relay_Master_Log_File: mysql-binlog.000001Slave_IO_Running: YesSlave_SQL_Running: YesReplicate_Do_DB: testReplicate_Ignore_DB: Replicate_Do_Table: Replicate_Ignore_Table: Replicate_Wild_Do_Table: Replicate_Wild_Ignore_Table: Last_Errno: 0Last_Error: Skip_Counter: 0Exec_Master_Log_Pos: 325Relay_Log_Space: 629Until_Condition: NoneUntil_Log_File: Until_Log_Pos: 0Master_SSL_Allowed: NoMaster_SSL_CA_File: Master_SSL_CA_Path: Master_SSL_Cert: Master_SSL_Cipher: Master_SSL_Key: Seconds_Behind_Master: 0
Master_SSL_Verify_Server_Cert: NoLast_IO_Errno: 0Last_IO_Error: Last_SQL_Errno: 0Last_SQL_Error:
1 row in set (0.00 sec)
可以看到:Slave_IO_Running | Slave_SQL_Running两个值都是YES,说明配置成功了。可以在主库的test库里执行DML或者DDL验证下。
如果同步不成功:
1:停掉从库
mysql> slave stop
2:主库上找到日志和位置
mysql> show master status;
3:手动同步
mysql> change master to
> master_host='master_ip',
> master_user='gechong',
> master_password='gechong',
> master_port=3306,
> master_log_file='mysql-bin.000020',
> master_log_pos=135617781;
1 row in set (0.00 sec)
4:启动从库
mysql> slave start;
1 row in set (0.00 sec)
如果有异常需要跳过:
>slave stop;
>SET GLOBAL sql_slave_skip_counter = 1;
>slave start;
主从搭建一般步骤:
CentOS6.5搭建MySQL5.1主从复制相关推荐
- centos6.5 mysql5.6主从复制
centos6.5 mysql5.6主从复制 主mysql vi /etc/my.cnf [client] default-character-set = utf8 port ...
- MySQL5.6 主从复制配置
2019独角兽企业重金招聘Python工程师标准>>> MySQL5.6 主从复制配置 转自本人独立博客:http://www.wangboak.com/2014/10/mysql5 ...
- mysql5.6主从复制与基于amoeba实现读写分离
Mysql5.6主从复制 1.特性分析说明: mysql 5.6支持多线程复制的机制并且mysql 5.6还引用了GTID的概念,使得其复制功能的配置.监控及管理变得更加易于实现,且更加健壮. TID ...
- centos 6.5安装mysql5.7,centos6.5安装mysql5.7
dev.mysql.com/downloads/file/?id=473559 检查并删除以前的mysql 请看上篇 CentOS6.5 下MySQL傻瓜式安装 2.把压缩包放到 /usr/l ...
- CentOS6.5安装MySQL5.7详细教程
CentOS6.5安装MySQL5.7详细教程 注:文中所写的安装过程均在CentOS6.5 x86下通过测试 主要参考博文: https://segmentfault.com/a/119000000 ...
- mysql5.6主从复制(读写分离)方案_MySQL5.6主从复制(读写分离)方案
MySQL5.6主从复制(读写分离)方案 一.前言:为什么MySQL要做主从复制(读写分离)? 通俗来讲,如果对数据库的读和写都在同一个数据库服务器中操作,业务系统性能会降低. 为了提升业务系统性能, ...
- MySQL5.6主从复制(读写分离)方案
MySQL5.6主从复制(读写分离)方案 https://yq.aliyun.com/articles/24255 摘要: 一.前言:为什么MySQL要做主从复制(读写分离)? 通俗来讲,如果对数据库 ...
- linux安装mysql5.7.29_linux 之centos7搭建mysql5.7.29的详细过程
1.下载mysql 1.1下载地址 https://downloads.mysql.com/archives/community/ 1.2版本选择 2.管理组及目录权限 2.1解压mysql tar ...
- 解决CentOS6.5下MySQL5.6无法远程连接的问题
解决CentOS6.5下MySQL5.6无法远程连接的问题 参考文章: (1)解决CentOS6.5下MySQL5.6无法远程连接的问题 (2)https://www.cnblogs.com/yang ...
- mysql5.7主从复制--在线变更复制类型【转】
这里说一下关于如何在线变更复制类型(日志复制到全局事物复制),参考课程:mysql5.7复制实战 先决条件 (1)集群中所有的服务器版本均高于5.7.6 (2)集群中所有的服务器gtid_mo ...
最新文章
- 5g的八大关键指标_你对5G技术标准了解多少(干货)
- iOS8 TabBarItem设置自定义图片问题
- php 怎么从memcache缓存数据中统计某一字段总数,php和memcache统计在线人数的方法...
- learnpythonthehardway下载_LearnPythonTheHardWay学习笔记1:学习环境搭建
- 【计算机网络】Socket
- 在Linux上搭建VisualSVN Server(svn服务端)
- php代码执行漏洞,预警!!!PHP 远程代码执行漏洞
- Docker Jenkins Node(一):初步构建
- 1.使用Dotnet core命令建立并且运行项目。
- 区块链 Zilliqa是什么
- SQL Server 2008每天自动备份数据库
- 集团企业数据信息系统建设方案
- JAVA招聘管理系统计算机毕业设计Mybatis+系统+数据库+调试部署
- 量化投资_期货日内交易的波动率思考
- 一文读懂等级保护二级
- 经验 | 本硕985回忆研究生这三年
- 2022新版海螺影视主题模板M3.1全解密版本多功能苹果CMSv10后台自适应主题
- 【Unity开发总结】C# 闭包陷阱
- C#设计模式(4)-Simple Factory Pattern
- 操作系统思维导图总结