ubuntu环境下配置mysql主从复制
来源:互联网 发布:淘宝怎么激活店铺 编辑:程序博客网 时间:2024/05/15 05:34
我是在VMWare虚拟机的Ubuntu 16.04上进行的测试,步骤如下
1、依次下载安装MySQL,我使用的是 sudo apt-get install mysql-server mysql-client在线安装
2、在主从的终端分别输入
vim /etc/mysql/mysql.conf.d/mysqld.cnf
打开配置文件,注释掉bind-address,用来允许远程访问数据库。
并在主服务器的里添加以下代码。
server-id = 1 #server-id 服务器唯一标识
log_bin = master-bin #log_bin 启动MySQL二进制日志
log_bin_index = master-bin.index
binlog_do_db = myslave #binlog_do_db 指定记录二进制日志的数据库
binlog_ignore_db = mysql #binlog_ignore_db 指定不记录二进制日志的数据库
在从服务器的数据库配置文件里加入以下代码
3、允许mysql的远程访问(权限可以根据自己配置)
例如:
允许账户为root,密码为wangcbin的用户,从192.168.110.*的IP范围 远程访问A主mysql,如果想任何机器都能连上主机把IP改成%即可
mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'192.168.110.*' IDENTIFIED BY 'wangcbin' WITH GRANT OPTION;
生效。该操作很重要!
mysql>FLUSH PRIVILEGES;
4、分别重启mysql服务
service mysql restart
5、登录主服务器上的mysql并查看状态信息
show master status
记录下file和position字段的值后面会用到
6、登录从服务器上的mysql并输入一下代码,用于从服务器连接上master服务器
change master to master_host='192.168.178.128',master_port=3306,master_user='root',master_password='wangcbin',master_log_file='master-bin.000001',master_log_pos=1048;
(master_host对应主服务器的IP地址,master_port对应主服务器的端口,master_user对应主服务器的账号,master_password对应主服务器的密码,master_log_file对应show master status显示的File列:master-bin.000001,master_log_pos对应Position列:1048,否则有可能出现同步失败。)
master_user和master_password是第三步配置的账号和密码
7、在从服务器上面启动同步 start slave 查看从服务器状态 show slave status\G;
上面两个都为Yes表示同步成功,如果是slave_io_running no了,那么就我个人看有三种情况,一个是网络有问题,连接不上,第二个是有可能my.cnf有问题,查看server-id是否已经更改,最后一个是mysql的uuid是否和主服务器的不一样,具体问题通过查看mysql的log日志。
mysql的目录结构:
/usr/bin 客户端程序和脚本
/usr/sbin mysqld 服务器
/var/lib/mysql 日志文件,数据库 [重点要知道这个]
/usr/share/doc/packages 文档
/usr/include/mysql 包含( 头) 文件
/usr/lib/mysql 库
/usr/share/mysql 错误消息和字符集文件
/usr/share/sql-bench 基准程序
我遇见的问题,通过查看日志文件:
Slave I/O for channel '': Fatal error: The slave I/O thread stops because master and slave have equal MySQL server UUIDs; these UUIDs must be different for replication to work. Error_code: 1593
发现原来是uuid和主服务器的uuid重复了,Mysql的一个配置文件auto.cnf里面记录了mysql服务器的uuid。(auto.cnf的地址在库下面/var/lib/mysql )
因为我的从服务器是通过主服务器克隆过来的,所以mysql的uuid重复导致的问题。
需要注意的是权限问题,默认情况下/var/lib/mysql是没有权限访问和修改的,需要sudo chmod 777 /usr/lib/mysql 修改权限后可以访问
- ubuntu环境下配置mysql主从复制
- ubuntu下配置mysql主从复制
- wamp环境下MySQL配置主从复制
- mysql在ubuntu环境下配置主从数据学习笔记
- MySQL主从复制配置-windows单机环境
- Windows环境下创建MySQL主从复制
- linux环境下搭建mysql主从复制
- window环境下mysql主从复制
- Ubuntu 12.10下Redis主从复制配置
- Linux下MySql主从复制配置
- Linux下配置MySQL主从复制
- mysql 主从复制 主从配置
- window下配置mysql主从复制与主从切换
- Ubuntu环境下的MySQL主从分离
- MySQL主从复制配置
- MySQL主从复制配置
- 配置MySQL主从复制
- MySQL主从复制配置
- java设置字符串编码、转码
- 数论?? 数学 计算直线的交点数 DBSDFZ OJ
- 将博客搬至CSDN
- [BZOJ]4709 柠檬 DP单调性优化 + 单调栈
- HDU2059 龟兔赛跑(dp)
- ubuntu环境下配置mysql主从复制
- 清除浮动的三种常用方式:
- Codeforces 873 B. Balanced Substring
- Hibernate 多对一与一对多关系配置(个人理解)
- 无线通信关键技术-扩频
- 第七章实践项目一__建立顺序环形队列算法库
- Java并发编程的艺术-第四章之Java并发基础
- 轮播布局
- IEtester