mysql 5.5主从复制配置
首先将主库现有的要实现主从的数据库原原本本地复制到从库上,目的是一开始就让主从同步,让binlog日志从最新的记录开始同步!
备份:
方法1:快捷导出所要的库如(库goods)[注意:该方法仅适合MyISZAM引擎的数据库,而不适应InoDB数据库,切记!]
将mysql的库的源数据(在/usr/local/mysql/var/下)打包成一个goods.tar.gz的压缩文件,然后再拷到从库的mysql对应目录中解压,推荐使用这种方法。
方法2: 导出所有库
系统命令行
mysqldump -uusername -ppassword --all-databases > test.sql
2 导入所有库
mysql命令行
mysql>source test.sql;
远程复制:将192.168.80.145上的test.sql拷到本机上 scp -P8880(默认为22,注意P是大写的) 192.168.80.145:/tmp/test.sql /tmp/ 注意:要复制的文件可以是单个或批量文件或压缩包,但不能是文件夹。
1.主库编辑my.cnf:
[mysqld]
log-bin=NEW_NAME
server-id=1 #配一个唯一的ID编号。
#设置要进行或不要进行主从复制的数据库名,同时也要在 Slave 上设定。
#说明:试验证明主库的binlog-do-db及binlog-ignore-db配不配置都行,关键是配置从库的就行。
#添加以下配置:要同步的库
#binlog-do-db=数据库名1
#binlog-do-db=数据库名2
#要忽略的库
#binlog-ignore-db=数据库名1
#binlog-ignore-db=数据库名2
#注意:要同步的库及要忽略的库只配置其中一项,一般只配要同步的库
mysql> grant replication slave on *.* to slaveuser@192.168.1.101 identified by '123456' ;
mysql> flush privileges;
mysql> show master status;
+------------------+----------+--------------+------------------+
| File | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+------------------+----------+--------------+------------------+
| mysql-bin.000008 | 337 | | |
+------------------+----------+--------------+------------------+
记录下二进制日志文件名和位置
2.从库编辑my.cnf 把server-id改成不和主机相同的数字。
如果只想同步指定的数据库,可以添加 replicate-do-db = yourdatabase,
同步几个就复制几个,把数据库名改了就好。
[mysqld]
server-id=2 #唯一(建议使用ip的最后一位)
#设置要进行或不要进行主从复制的数据库名,同时也要在 Master 上设定。
#添加以下配置:
//主库的数据库地址及访问账户
master-host = 192.168.1.100
master-user = slaveuser
master-password = 123456 master-port = 3306
要同步的库
replicate-do-db=数据库名1
replicate-do-db=数据库名2
跳过错误,防止主键冲突
slave-skip-errors = 1062
#如果只同步某库中的表,就使用下面这项
replicate-wild-do-table=库名.表名
#要忽略的库
#replicate-ignore-db=数据库名1(可以不配置)
#replicate-ignore-db=数据库名2(可以不配置)
注意:要同步的库及要忽略的库只配置其中一项,一般只配要同步的库
mysql> change master to master_host='192.168.1.100',master_user='slaveuser',master_password='123456', master_log_file='mysql-bin.000008',master_log_pos=337;//说明:这个master_log_file是主库最新的binlog日志,master_log_pos是主库最新的位置,使用show master status命令可以查看到。
mysql> start slave; mysql> show slave status\G;
如果出现:
Slave_IO_Running: Yes
Slave_SQL_Running: Yes
以上两项都为Yes,那说明没问题了。
注:如果出现Slave_SQL_Running:connecting的现象,首先在从库命令行下输入:
#mysql -uslaveuser -h 192.168.1.100 -p123456 看是否能登入mysql,如果是拒绝等提示,那要查看主机上的第从库授权操作是否用户的权限等设置正确或者查一下防火墙设置。
如果开始的环境不是主从架构,跑了一段时间已经有了数据,
这时候要先在主机上加锁:
进入指定数据库test:use test;
flush tables with read lock;
打包主机的数据目录: #tar zcf /tmpdatabak.tgz /opt/data,拷贝这个压缩包到从机,解压后,做主从的配置。
然后解锁:
unlock tables;
说明:
如果数据库主从所有的库表都同步,此时在主从的my.cnf中就不用配置binlog-do-db、binlog-ignore-db、replicate-do-db、replicate-ignore-db了。 有时候处理错误可以尝试在从库上跳过1次错误(从库中有增删改,造成了主键冲突):
mysql> stop slave;
mysql> set global sql_slave_skip_counter=1;
mysql> start slave;
mysql> show slave status\G;
mysql 5.5主从复制配置的更多相关文章
- Mysql安装及主从复制配置
1.下载 mysql数据库 wget http://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.9-linux-glibc2.5-x86_64.ta ...
- mysql 8.0 主从复制配置
背景: 主库: 192.168.211.128 从库: 192.168.211.129 一.关闭防火墙 [root@node01 ~]# systemctl disable firewalld [ro ...
- linux MySql 在 Master 主从复制配置
在 Master 服务器上建立用于 Slave 服务器复制数据的帐户 [root@master ~]# mysql mysql> grant replication slave,replicat ...
- mysql主从复制配置
使用mysql主从复制的好处有: 1.采用主从服务器这种架构,稳定性得以提升.如果主服务器发生故障,我们可以使用从服务器来提供服务. 2.在主从服务器上分开处理用户的请求,可以提升数据处理效率. 3. ...
- 二:mysql安装配置、主从复制配置详解
作者:NiceCui 本文谢绝转载,如需转载需征得作者本人同意,谢谢. 本文链接:http://www.cnblogs.com/NiceCui/p/8213723.html 邮箱:moyi@moyib ...
- mysql安装配置、主从复制配置详解
作者:NiceCui 本文谢绝转载,如需转载需征得作者本人同意,谢谢. 本文链接:http://www.cnblogs.com/NiceCui/p/8213723.html 邮箱:moyi@moyib ...
- MYSQL主从复制配置(整理)
MYSQL主从原理及过程 原理 Mysql的 Replication 是一个异步的复制过程(mysql5.1.7以上版本分为异步复制和半同步两种模式),从一个 Mysql instace(我们称之为 ...
- mysql安装配置、主从复制配置详解【转】
仅限 centos7以下 版本 #yum install mysql #yum install mysql-server #yum install mysql-devel 启动服务 [root@loc ...
- Linux 笔记 - 第二十三章 MySQL 主从复制配置
一.前言 MySQL Replication,也被称为主从复制.AB 复制.简单来说就是 A 和 B 两台服务器做主从后,在 A 服务器上写入数据,B 服务器上也会跟着写入输入,两者之间的数据是实时同 ...
随机推荐
- Glide图片加载回调
1.方法一:设置图片中监听 使用的是SimpleTarget类,他继承自BaseTarget,需要重写onResourceReady方法,onResourceReady方法表示加载完成后的回调,下面列 ...
- Cryptography I 学习笔记 --- 抗碰撞
1. 生日攻击,如果hash函数可以产生n bit的结果,那么生日攻击的时间复杂度在O(nn/2)这个量级.以比特币使用的SHA256为例,其hash结果为256bit,那么如果想完成一次生日攻击,那 ...
- (转)十步完全理解 SQL
十步完全理解 SQL 目录[-] 10个简单步骤,完全理解SQL 1. SQL 是一种声明式语言 2. SQL 的语法并不按照语法顺序执行 3. SQL 语言的核心是对表的引用(table refer ...
- bjtu 1846. Infinity的装备[状压dp+dfs/bfs]
https://citel.bjtu.edu.cn/acm/oj/problem/1846 1846. Infinity的装备 时间限制 1000 ms 内存限制 64 MB 题目描述 “测试服终于下 ...
- 【JSOI2007】文本生成器
用AC自动机处理所有了解的单词 显然,不能直接算,直接算的话,我们需要大力容斥,复杂度不允许 我们不妨反过来做,我们根据AC自动机处理出所有的不可行解,然后用总数减去即可 计算所有不可行解用dp,\( ...
- shell 实现自动备份nginx下的站点
shell 实现自动备份nginx下的站点 优点 实现自动备份ngnix下的所有运行的站点 自定义排除备份站点,支持三种排除 自动维护备份目录,防止备份目录无限扩大 备份压缩tar.gz格式 源码: ...
- “应用程序无法正常启动(oxc000007b)”解决方案
- lua 的一些常用概念
1 a={} //定义了一个table a a[10000]=1 //这里的table中只有一个元素,10000,而不是有10000个元素 2 x=math.pi //定义了x等于π print( ...
- 对象第复制operator=
类机制中有默认的对象复制操作符=,自定义对象复制需要注意一个问题,如果有遇到指针指向的资源是需要释放的,这时需要毫不留情释放,否则内存空间的泄露就不可避免.复制操作与拷贝构造函数的参数是一致的,只是在 ...
- windows搭建json-server快速方法
JSON-Server 是一个 Node 模块,运行 Express 服务器,你可以指定一个 json 文件作为 api 的数据源. 一.下载并安装node.js 安装完后输入 node --vers ...