mysql主从服务器

在[mysqld]下添加

-------------主服务器---------------
《步骤1》
vi /etc/my.cnf (源码编译安装的mysql配置文件所在)/data0/mysql/3306/my.cnf

[mysqld]
server-id = 1
log-bin = mysql-bin
binlog-do-db = huoli
binlog-do-db = db2
binlog-ignore-db = test
binlog-ignore-db = mysql
binlog-ignore-db = information_schema

service mysql restart

《步骤2》
登陆mysql命令行,执行
GRANT REPLICATION SLAVE ON *.*  TO ‘帐号‘@‘从服务器IP‘ IDENTIFIED BY ‘密码‘;
REPLICATION SLAVE

GRANT REPLICATION SLAVE ON *.* TO ‘backup‘@‘192.168.1.171‘ IDENTIFIED BY ‘878899‘;
GRANT REPLICATION SLAVE ON *.* TO ‘backup‘@‘192.168.1.172‘ IDENTIFIED BY ‘878899‘;

测试账号是否可以连接使用

《步骤3》
-------------主服务器-------------------
锁定主机数据库表
msyql>FLUSH TABLES WITH READ LOCK;
Query OK, 0 rows affected (0.13 sec)
查看主机 Master 状态
mysql>SHOW MASTER STATUS; ————》这一步看到的信息是《步骤6》中的信息,注意改正确!
备份主机数据库
cd /usr/local/mysql/var/ 源码编译安装的mysql的数据库位置 /data0/mysql/3306/data/
tar zcvf db_backup.tar.gz ibdata* ib_logfile* huoli/
mv db_backup.tar.gz /tmp

《步骤4》
-------------从服务器-------------
vi /etc/my.cnf 源码编译安装的mysql的配置文件 vi /data0/mysql/3306/my.cnf server-id (从机的ID号不能重复,要唯一)
[mysqld]
server-id = 2
log-bin=mysql-bin
replicate-do-db = huoli
replicate-do-db = db2
replicate-ignore-db = test
replicate-ignore-db = mysql
replicate-ignore-db = information_schema

service mysql start 重启mysql /data0/mysql/3306/mysql restart

《步骤5》
---------从服务器----------
为了保持数据一致:
$ service mysql stop /data0/mysql/3306/mysql stop
$ cd /usr/local/mysql/var 源码编译安装mysql的数据库路劲 /data0/mysql/3306/data/
删除从机上的日志和数据
$ rm -rf ibdata* ib_logfile* mysql-bin.* master.info relay-log.info huoli/ [有类似数据库则删除]
复制主mysql的数据文件到当前目录,解压缩
$ scp 192.168.1.172:/tmp/db_backup.tar.gz ./
$ tar zxvf db_backup.tar.gz
修改权限
$ chown -R mysql.mysql ibdata* ib_logfile* huoli/

《步骤6》
-----------在从服务器进行-------------
先启动mysql
/data0/mysql/3306/mysql start
停止原来的备份
mysql>slave stop;
Query OK, 0 rows affected, 1 warning (0.00 sec)
设置备份点(根据主服务器的日志文件和记录点来设置)
mysql>CHANGE MASTER TO MASTER_HOST=‘192.168.1.170‘,MASTER_PORT=3306,MASTER_USER=‘backup‘,MASTER_PASSWORD=‘878899‘,MASTER_LOG_FILE=‘mysql-bin.000001‘,MASTER_LOG_POS=107;
Query OK, 0 rows affected (0.02 sec)
启动备份
mysql>slave start;
Query OK, 0 rows affected (0.02 sec)
 解锁主机数据库表
msyql>UNLOCK TABLES;
Query OK, 0 rows affected (0.00 sec)

mysql>show slave status\G

执行后信息显示如下:

*************************** 1. row ***************************
Slave_IO_State: Waiting for master to send event
Master_Host: 172.19.203.200 ————》这是主服务器IP
Master_User: backup
Master_Port: 3306
Connect_Retry: 60
Master_Log_File: mysql-bin.000001
Read_Master_Log_Pos: 524
Relay_Log_File: localhost-relay-bin.000002
Relay_Log_Pos: 235
Relay_Master_Log_File: mysql-bin.000010
Slave_IO_Running: Yes
Slave_SQL_Running: Yes
Replicate_Do_DB: db1,db2
Replicate_Ignore_DB: test,mysql,information_schema
Exec_Master_Log_Pos: 524
Master_SSL_Key:
Seconds_Behind_Master: 0
时间: 2024-08-04 22:54:51

mysql主从服务器的相关文章

2-18,19 搭建MySQL主从服务器并并通过mysql-proxy实现读写分离

MySQL主从服务器 实现方式: MySQL  REPLICATION Replication可以实现将数据从一台数据库服务器(master)复制到一台或多台数据库服务器(slave) 默认情况下这种情况属于异步复制,无需维持长连接 通过配置,可以复制所有库或者几个库,甚至库中的一些表 它是MySQL内建的,自带 Replication的原理 主服务器master将数据库的改变写入二进制日志文件,从服务器slave同步这些二进制日志,并生成中继日志,从服务器根据中继日志,执行这些改变 DML:S

搭建mysql主从服务器

搭建mysql主从服务器: //注:注释掉my.cn文件中的skip-federated字段[[email protected] ]# /bin/cp -r /usr/local/mysql/share/mysql/my-huge.cnf  /etc/my.cnf 配置主服务器:修改my.cnf文件server-id=1 //每个数据库服务器都要指定唯一一个server-id log-bin=mysql-bin //mysql进行主从复制时通过二进制日志文件来进行的,所以必须开启mysql日志功

mysql主从服务器复制原理

在实际企业应用环境当中,单台mysql数据库是不足以满足日后业务需求的.譬如服务器发生故障,没有备份服务器来提供服务的话,业务就得停止.介于这种情况,我们来学习一下mysql主从复制. 将Mysql的数据分布到多个系统上去,这种分布的机制,是通过将Mysql的某一台主机的数据复制到其它主机(slaves)上,并重新执行一遍来实现的.复制过程中一个服务器充当主服务器,而一个或多个其它服务器充当从服务器.主服务器将更新写入二进制日志文件,并维护文件的一个索引以跟踪日志循环.这些日志可以记录发送到从服

mysql主从服务器搭建

当业务流量过大时,我们的一台服务器可能难以负载,我们需要用到主从服务器的配置. 具体配置如下: 172.17.10.57位主服务器 172.17.55.206 从服务器 正确的安装数据库后,确保两台的能互通. mysql>GRANT REPLICATION SLAVE ON *.* to 'mysync'@'%' identified by 'q123456'; //一般不用root帐号,"%"表示所有客户端都可能连,只要帐号,密码正确,此处可用具体客户端IP代替,如192.16

mysql主从服务器的配置

使用mysql主从复制的好处有: 1.采用主从服务器这种架构,稳定性得以提升.如果主服务器发生故障,我们可以使用从服务器来提供服务. 2.在主从服务器上分开处理用户的请求,可以提升数据处理效率. 3.将主服务器上的数据复制到从服务器上,保护数据免受意外的损失. 环境描述: 新企业要搭建架构为主从复制的mysql数据库. 主服务器(mysql-master):IP地址:192.168.48.128,mysql已安装,没有用户数据. 从服务器(mysql-slave):IP地址:192.168.48

mysql 主从服务器 切换

mysql 从服务器切换为主服务器: 步骤如下: 1 确认从服务器已经完成所有同步操作: stop slave io_thread  show processlist  直到看到状态都为:xxx has read all relay log 表示更新都执行完毕 2 停止从服务器slave服务 stop slave 3 将从服务器切换为主服务器: reset master 完成切换. PS: 如果从服务器设置了 read only 选项,则需要将这个参数去掉并重新启动数据库.

MySQL主从服务器slave无法连接master:SSL连接错误:协议版本不匹配

首次发文 刚学2个月的小白在VM上练习主从复制时候遇到了一个错误: ERROR 2026 (HY000): SSL connection error: protocol version mismatch 在查看Firewalls和selinux都关闭后,无奈了 反复连接都是这个错误,换了服务器连接还是提示同样的错误,崩溃了 最后解决方法是 在主从服务器上分别在/etc/my.cnf文件下加入一行代码 skip_ssl 注意是两个都要加 保存,重启mysqld 然后可以连接了 go on!主从复制

配置mysql主从服务器

参考:https://www.linuxidc.com/Linux/2016-09/135633.htm 一.Master主服务器配置(192.168.1.3) 1.编辑my.cnf(命令查找文件位置:find / -name my.cnf) vi /etc/mysql/my.cnf 在[mysqld]中添加: server-id = 1 log_bin = master-bin log_bin_index = master-bin.index binlog_do_db = my_data bi

使用Amoeba让mysql主从服务器实现读写分离

环境: 一台CentOS6.5-x64最小化安装(ip:10.0.0.226) 软件:jdk-8u60-linux-x64.rpm, amoeba-mysql-binary-2.2.0.tar.gz 下载地址:链接: http://pan.baidu.com/s/1c04Wmys 密码: 4tqe 2.一台CentOS6.5-x64最小化安装(ip:10.0.0.222) 为了节省资源,本次使用的是mysql多实例.3306为主(master),3307为从(slave). 主从同步这里就不在说

MySQL主从服务器的原理和设置

一 主从配置的原理     mysql的Replication是一个异步的复制过程,从一个mysql instance(Master)复制到另一个mysql instance(Slave), 在master与slave之间的整个复制过程主要由三个线程完成,分别为Master端得IO线程和Slave端得IO线程和Sql线程.整 个过程如下:     1 Slave上的IO线程连接上Master,并请求从指定日志的指定位置之后的日志内容     2 Master收到来自Slave的IO线程请求后,通