mysql主从配置 51cto_Mysql主从复制配置
Mysql主从复制配置
本文只是介绍安装和配置,关于一些名词和原理,请参考mysql手册。
Mysql的复制最少需要两台mysql服务器,一台主(主机名master,ip为192.168.20.204),一台从(主机名slave:ip 为192.168.20.205)。
为了快速搭建mysql环境,我选择了rpm的安装方式,在实际应用中根据自己的需求选择安装方式。下载mysql的RPM安装文件并安装mysql,两台mysql的安装时一样的(我下载的是常规的Linux RPM包,因为我的系统是centos,之前选择RedHat的RPM包安装失败了)
MySQL-server-5.1.46-1.glibc23.i386.rpm//服务器程序
MySQL-client-5.1.46-1.glibc23.i386.rpm//客户端程序
一.Mysql的安装
[root@master ~]# rpm -ivh MySQL-server-5.1.46-1.glibc23.i386.rpm
[root@master ~]# rpm -ivh MySQL-client-5.1.46-1.glibc23.i386.rpm
安装完成后,拷贝mysql配置文件到/etc/目录下
[root@master mysql]# cp /usr/share/my-medium.cnf /etc/my.cnf
初始化mysql的root密码
mysqladmin -u root password 123456
二.配置复制
1,首先登录master数据库,创建复制账号
mysql> grant replication slave on *.* to repl@192.168.20.205 identified by '123456';
2,设置只读锁定,查看二进制日志名和记录偏移量
mysql> flush tables with read lock;
mysql> show master status;
+------------------+----------+--------------+------------------+
| File| Position | Binlog_Do_DB | Binlog_Ignore_DB |
+------------------+----------+--------------+------------------+
| mysql-bin.000001 |106 | | |
+------------------+----------+--------------+------------------+
1 row in set (0.00 sec)
3,备份(导出)master数据库,解除只读锁定
[root@master ~]# mysqldump --all-databases > all.sql
[root@master ~]# mysql -uroot -p123456
mysql> unlock tables;
4,在slave服务器上,将master导出的sql文件导入
[root@slave ~]# mysql -uroot -p123456 < all.sql
登录slave数据库,查看库和表,看是否和master一致
5,确保导入成功后,修改salve数据库的配置文件
[root@slave ~]# vi /etc/my.cnf
将server-id = 1修改成server-id = 2
保存退出,并暂时停止slave数据库
[root@slave ~]# service mysql stop
6,在slave上,使用--skip-save-start选项启动数据库,这样做的好处是不会立即启动从数据库上的复制进程,方便我们进一步配置从服务器
[root@slave ~]# mysqld_safe --skip-save-start &
7,设置从数据库
mysql> CHANGE MASTER TO
-> MASTER_HOST='192.168.20.204',
-> MASTER_USER='repl',
-> MASTER_PASSWORD='123456',
-> MASTER_LOG_FILE='mysql-bin.000001',
-> MASTER_LOG_POS=106;
8,启动slave进程,查看进程列表
mysql> start slave;
mysql> show processlist \G
*************************** 1. row ***************************
Id: 2
User: root
Host: localhost
db: NULL
Command: Query
Time: 0
State: NULL
Info: show processlist
*************************** 2. row ***************************
Id: 3
User: system user
Host:
db: NULL
Command: Connect
Time: 30
State: Waiting for master to send event
Info: NULL
*************************** 3. row ***************************
Id: 4
User: system user
Host:
db: NULL
Command: Connect
Time: 30
State: Has read all relay log; waiting for the slave I/O thread to update it
Info: NULL
3 rows in set (0.00 sec)
蓝颜色标记的字段,表明已经连上了master数据库。
9,接下来就是测试复制了
首先在master数据库中创建一个名为yanggt的库,在库中新建一个表,插入几条记录,看是否能在slave数据库中看到,如果看到的结果和master一致,说明已经ok了!
mysql主从配置 51cto_Mysql主从复制配置相关推荐
- 主从配置_MySQL主从复制配置详解
MySQL版本5.5.58 第一步配置主机 主机配置如下: server-id = 1 #服务器id (主从必须不一样) log_bin = mysql-bin #打开日志(主机需要打开), 这个my ...
- mysql 1677_mysql之数据库主从复制配置报错1677
mysql之数据库某表字符集和数据库字符集不一致导致主从复制配置报错1677 mysql数据库中某张表字符集是utf8而my.cnf设置的数据库的字符集是utf8mb4,导致在配置主从复制时,报如下错 ...
- mysql 1677_MySQL之数据库主从复制配置报错Last_Errno: 1677
MySQL之数据库某表字符集和数据库字符集不一致导致主从复制配置报错1677 mysql数据库中某张表字符集是utf8而my.cnf设置的数据库的字符集是utf8mb4,导致在配置主从复制时,报如下错 ...
- kali mysql停止服务器_MySQL主从复制配置详解
MySQL版本5.5.58 第一步配置主机 主机配置如下: server-id = 1 #服务器id (主从必须不一样) log_bin = mysql-bin #打开日志(主机需要打开), 这个my ...
- mysql主从 单点_MySQL主从复制虽好,能完美解决数据库单点问题吗?
一.单个数据库 服务器 的缺点 数据库服务器存在单点问题: 数据库服务器资源无法满足增长的读写请求: 高峰时数据库连接数经常超过上限. 二.如何解决单点问题 增加额外的数据库服务器,组建数据库集群: ...
- mysql主从应用_MySQL主从复制应用、主从复制原理
mysql主从复制安装配置 1.基础设置准备 #操作系统: centos6.5 #mysql版本: 5.7 #两台虚拟机: node1:192.168.85.111(主) node2:192.168. ...
- mysql 主从 问题_Mysql主从复制的问题与解决
主从复制的原理 主库将变更的操作写入bin-log日志中(增,删,改操作). 从库中的I/O线程将主库的bin-log拷贝到本地,写入relay-log(中继日志中) 从库的SQL线程从中继日志中读取 ...
- mysql 主从二进制日志_Mysql-8 配置主从复制(基于二进制日志)
1. 实验环境 System IP Host CentOS 7.4.1708 192.168.100.101 master CentOS 7.4.1708 192.168.100.102 slave ...
- mysql主从复制时间配置_MySQL主从复制配置
环境 CentOS 7.5 Docker 1.13.1 MySQL 8.0.16 基于以上环境启动三个mysql容器,一个为master,二个为slave master和slave使用的mysql版本 ...
最新文章
- App功能测试的注意点
- 数据科学家必须要掌握的5种聚类算法
- 生产环境LNMP (果图片)
- Qt5布局管理(2)
- laravel框架总结(十一) -- 集合
- 51的IO口和上拉电阻驱动
- 漫画:给女朋友介绍什么是 “元宇宙” ?
- textarea中插入标签_HTMLCSS学习笔记(二)-- HTML表单标签
- 说一下你对多态的理解?_如何去理解java中的多态?从jvm角度分析也许让你更清晰...
- 动态创建MySQL Group Replication的节点(r11笔记第84天)
- python split拆分字符串_python实现字符串完美拆分split()的方法
- Java中OutOfMemoryError(内存溢出)的情况及解决办法
- 关于CAD选择集的一些用法
- 高仓健电影《海峡》观后感
- 武汉大学计算机学院2018夏令营,武汉大学
- 用手机玩转GIS!这些你常用的GIS软件竟然都有手机版
- HALCON联合C#检测表面缺陷——检测缺陷原理(三)
- 几款制作网页线框图的软件介绍
- 【PAT乙级】1020 月饼
- nmon analyser 使用中报错“宏”不可用的问题及处理
热门文章
- SAP CRM Distribution Chain数据模型
- 如何在S/4HANA生产订单创建上下文里拿到前置销售订单信息
- SAP标准培训课程C4C10学习笔记(一)第一单元
- ABAP和XML数据格式互相转换的两种方式
- vscode 设置断点知乎_vscode 代码自动换行设置
- c字符串截取一部分字符串_Python如何截取一段字符串?
- 最近公共祖先_LCA 最近公共祖先
- python3.x版本的保留字总数是多少_Python3.6.5版本的保留字总数是:()-智慧树大数据分析的python基础章节答案...
- pygame为游戏添加背景_万能的Python和Pygame模块构建一个游戏框架
- 悲观锁代码java_悲观锁的代码实现如何编写?