一主一从配置 or 一主多从
来源:互联网 发布:湖北金税盘开票软件 编辑:程序博客网 时间:2024/04/28 13:43
一主一从配置 or 一主多从:
1)确保主从服务器上安装了相同版本的数据库。因为复制的功能在持续的改进中,所 以在可能的情况下推荐安装最新的稳定版本。
2)在主服务器上,设置一个复制使用的账户,并授予 REPLICATION SLAVE 权限。
--在这里如果报错:ERROR 1364 (HY000): Field 'ssl_cipher' doesn't have a default value ? 则需要在my.cnf 或者my.init上配置参数:
sql-mode=STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
修改为
sql-mode=NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
然后重启MYSQL。
3)修改主数据库服务器的配置文件 my.cnf,开启 BINLOG,并设置 server-id 的值。这 两个参数的修改需要重新启动数据库服务才可以生效。
my.cnf 配置:
[mysqld]
log-bin = /home/mysql/log/mysql-bin.log -->必须开启。
server-id = 1 -->这个值手动设置,每个节点唯一。
binlog-ignore-db=mysql
read_only=TURE (read_only=1)
4)在主服务器上,设置读锁定有效,这个操作是为了确保没有数据库操作,以便获得 一个一致性的快照:
mysql> flush tables with read lock;
5) 然后得到主服务器上当前的二进制日志名和偏移量值。 这个操作的目的是为了在从 数据库启动以后,从这个点开始进行数据的恢复。 -->( 一个是file 编号,一个是position 值)
mysql> show master status;
+------------------+----------+--------------+------------------+
| File | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+------------------+----------+--------------+------------------+
| mysql-bin.000039 | 102 | | |
+------------------+----------+--------------+------------------+
1 row in set (0.00 sec)
6)备份主库上的数据文件到 备库中,如果是使用mysqdump 最好一个库一个库备份。 也可以直接在操作系统下 cp 全部的数据文件到从数据库服务器上,也可以通过 mysqldump 导出数据或者使用 ibbackup 工具进行数据库的备份。
7)主数据库的备份完毕后,主数据库可以恢复写操作,剩下的操作只需要在从服务器 上执行:
mysql> unlock tables;
8)将主数据库的一致性备份恢复到从数据库上。
9)修改从数据库的配置文件 my.cnf,增加 server-id 参数。注意 server-id 的值必须是 唯一的,不能和主数据库的配置相同,如果有多个从数据库服务器,每个从数据库服务器必须有自己唯一的 server-id 值。
这里备库1 配置:
my.cnf 中修改:
[mysqld]
server-id = 2
10)在从服务器上,使用--skip-slave-start 选项启动从数据库,这样不会立即启动从数 据库服务上的复制进程,方便我们对从数据库的服务进行进一步的配置:
[mysql@master1 ]$ ./bin/mysqld_safe --skip-slave-start & 或者: shell# /etc/init.d/mysqld start --skip-slave-start 11)对从数据库服务器做相应设置,指定复制使用的用户,主数据库服务器的 IP、端 口以及开始执行复制的日志文件和位置等,具体语法如下:
mysql> CHANGE MASTER TO
-> MASTER_HOST='master_host_name', -->主机host(IP)
-> MASTER_USER='replication_user_name', -->复制的用户user( 如果是主从从,指定的复制用户必须不同)
-> MASTER_PASSWORD='replication_password', -->复制用户的密码
-> MASTER_LOG_FILE='recorded_log_file_name', -->对应第5步的 file 编号。
-> MASTER_LOG_POS=recorded_log_position, -->对应的POS编号
-> MASTER_PORT=3308;
12)在从服务器上,启动 slave 线程:
mysql> start slave;
13)这时 slave 上执行 show processlist 命令将显示类似如下进程:
mysql> show processlist \G
14)查看master 进程状态: mysql > show master status \G
主要查看: Slave_IO_Running 和 Slave_SQL_Running 是否都为YES
==> 如果是一主多从 一样配置。
mysql 从服务器切换为主服务器:
步骤如下:
1 确认从服务器已经完成所有同步操作:
stop slave io_thread
show processlist
直到看到状态都为:xxx has read all relay log 表示更新都执行完毕
2 停止从服务器slave服务
stop slave
3 将从服务器切换为主服务器:
reset master
完成切换。
PS: 如果从服务器设置了 read only 选项,则需要将这个参数去掉并重新启动数据库。
0 0
- 一主一从配置 or 一主多从
- Mysql一主一从配置
- Mysql 一主多从配置
- Spring 一主多从、多主多从 数据库配置
- Spring 一主多从、多主多从 数据库配置
- mysql一主多从同步配置
- mysql一主多从同步配置
- mysql 一主多从配置说明
- mysql一主多从同步配置
- MySQL主从同步(一主一从配置、启动)
- 【Laravel】一主多从读写分离配置
- MySql 主从配置(一主多从)
- Redis集群——一主多从配置
- 从配置环境变量开始
- myql双主双从配置
- Rocketmq 配置双主双从
- mariadb配置双主多从
- Spring学习总结(18)——Spring整合Mysql数据库一主多从、多主多从配置
- Sky数
- 如何配置安全的tomcat服务器?
- 【01】台大机器学习L3 机器学习分类问题
- 线索化二叉树
- 【POJ2774】Long Long Message 后缀自动机
- 一主一从配置 or 一主多从
- 简单的启动界面
- Mysql
- Android学习之路
- 图解数字签名和数字证书
- oracle多表关联更新
- 基于雅可比方法的PCA实现
- 安卓应用开发常犯错误以及注意点
- 上师