搭建环境:mysql-z : 117.34.95.161:3306
mysql-c1:117.34.95.161:23306
mysql-c2:117.34.95.161:13306
均为CentOS 6.6、mysql5.6
一、安装数据库(略)
二、配置主数据库
1、 编辑/etc/my.cnf 添加以下两行
server_id=1
log_bin=mysql_bin
binlog-do-db=maidong #需要同步的数据库名,如果有多个数据库,可重复此参数,每个数据库一行
binlog-ignore-db=mysql #不同步mysql系统数据库
(以上两行不加时为同步全部数据库)
重启服务:service mysqld restart
2、进入mysql命令控制台
show variables like 'server_id'; #查看server_id是否是1
mysql> show variables like 'server_id';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| server_id | 1 |
+---------------+-------+
1 row in set (0.00 sec)
mysql> show master status; #查看主服务器信息,记录file跟pos
+------------------+----------+--------------+------------------+-------------------+
| File | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+------------------+----------+--------------+------------------+-------------------+
| mysql_bin.000002 | 304 | | | |
+------------------+----------+--------------+------------------+-------------------+
1 row in set (0.00 sec)
3、配置权限
create database maidong;
create user maidong identified by '123456';
grant all privileges on maidong.* to maidong@'%' identified by '123456';
grant all on *.* to 'maidong'@'10.57.96.54' identified by '111111' with grant option; #授权用户maidong从10.57.96.54完全访问数据库,注意:这里的10.57.96.54是要连接数据库Web服务器IP
grant replication slave on *.* to 'maidong'@'10.57.96.54' identified by '111111' with grant option; #授权用户maidong只能从10.57.96.54这个IP访问主服务器117.34.95.161上面的数据库,并且只具有数据库备份的权限
flush privileges;
4、把主数据库上的数据库导入从数据库(略 )
三、配置从数据库
1、编辑配置文件
vim /etc/my.cnf
server-id=2 #设置服务器id,修改其值为2,表示为从数据库,与主数据库不同即可
log-bin=mysql-bin #启动MySQ二进制日志系统,注意:如果原来的配置文件中已经有这一行,就不用再添加了。
replicate-do-db=maidong #需要同步的数据库名,如果有多个数据库,可重复此参数,每个数据库一行
replicate-ignore-db=mysql #不同步mysql系统数据库
read_only #设置数据库只读
service mysqld restart;
2、进入mysql命令行
show variables like 'server_id';
mysql> show variables like 'server_id';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| server_id | 2 |
+---------------+-------+
1 row in set (0.00 sec)
stop slave;
change master to master_host='117.34.95.161', master_port=3306, master_user='maidong', master_password='111111', master_log_file='mysql_bin.000002',master_log_pos=304; #执行同步语句
start slave; #开启slave同步进程
show slave status\G; #查看slave同步信息
mysql> show slave status\G;
*************************** 1. row ***************************
Slave_IO_State: Waiting for master to send event
Master_Host: 192.168.1.110
Master_User: wanmeng
Master_Port: 3306
Connect_Retry: 60
Master_Log_File: mysql_bin.000002
Read_Master_Log_Pos: 304
Relay_Log_File: mysql-c1-relay-bin.000002
Relay_Log_Pos: 467
Relay_Master_Log_File: mysql_bin.000002
Slave_IO_Running: Yes
Slave_SQL_Running: Yes
Replicate_Do_DB:
Replicate_Ignore_DB:
Replicate_Do_Table:
Replicate_Ignore_Table:
Replicate_Wild_Do_Table:
Replicate_Wild_Ignore_Table:
Last_Errno: 0
Last_Error:
Skip_Counter: 0
Exec_Master_Log_Pos: 304
Relay_Log_Space: 643
Until_Condition: None
Until_Log_File:
Until_Log_Pos: 0
Master_SSL_Allowed: No
Master_SSL_CA_File:
Master_SSL_CA_Path:
Master_SSL_Cert:
Master_SSL_Cipher:
Master_SSL_Key:
Seconds_Behind_Master: 0
Master_SSL_Verify_Server_Cert: No
Last_IO_Errno: 0
Last_IO_Error:
Last_SQL_Errno: 0
Last_SQL_Error:
Replicate_Ignore_Server_Ids:
Master_Server_Id: 1
Master_UUID: e9a5acfc-ca98-11e5-b6a0-005056931c66
Master_Info_File: /usr/local/mysql/data/master.info
SQL_Delay: 0
SQL_Remaining_Delay: NULL
Slave_SQL_Running_State: Slave has read all relay log; waiting for the slave I/O thread to update it
Master_Retry_Count: 86400
Master_Bind:
Last_IO_Error_Timestamp:
Last_SQL_Error_Timestamp:
Master_SSL_Crl:
Master_SSL_Crlpath:
Retrieved_Gtid_Set:
Executed_Gtid_Set:
Auto_Position: 0
1 row in set (0.00 sec)
注意查看:
Slave_IO_Running: Yes #连接到主库,并读取主库的日志到本地,生成本地日志文件
Slave_SQL_Running: Yes #读取本地日志文件,并执行日志里的SQL命令。
两个参数均为yes说明配置成功
另一台从数据库做同样操作,server_id不同即可
相关推荐
MySQL数据库全套视频,带你了解MySQL数据库,免费领取Python自动化学习资料 工具,面试宝典面试技巧
### MySQL 主从数据库搭建知识点详解 #### 一、MySQL 主从数据库的概念与作用 - **概念**:MySQL 主从数据库是指在多个MySQL服务器之间通过复制技术实现数据同步的一种架构模式。其中,负责处理数据更新操作的称为...
我们现在一般网站都是利用的MySQL数据库搭建网站的,但是在网上看到很多网友吐槽数据库连接不上的问题,现在我就结合相关资料向提出一些我个人的见解,希望对大家解决问题有帮助。 一般MySQL连接不上,可能有两大...
以下是对一主多从环境搭建的详细步骤: 1. **规划数据库存储路径**:在搭建环境之前,你需要为每个服务器定义数据文件的存储位置。例如,主机IP路径分别为`master192.168.10.111/home/mysql/home/mysql/mysql_data`...
在进行Qt与MySQL数据库连接之前,首先需要了解如何搭建开发环境以及如何编译Qt与MySQL数据库之间的驱动。下面详细介绍如何分步骤搭建Qt开发环境、MySQL数据库环境,并编译Qt连接MySQL数据库驱动。 1. Qt开发环境...
总的来说,Android连接MySQL数据库涉及网络编程、后端接口设计、JSON解析等多个环节,通过合理的架构设计和安全措施,可以实现高效且安全的数据交互。在实际开发中,还需要注意处理网络延迟、错误处理等问题,以提供...
3.搭建一主一从:最后,需要搭建一个主服务器和一个从服务器,以实现数据的高可用性和灾难恢复。 主库参数调整 主库参数调整是 MySQL 双主一从配置的关键部分。需要调整的参数包括: * server-id:主从的 ...
MySQL是一种广泛使用的开源关系型数据库管理系统(RDBMS),它基于结构化查询语言(SQL)。在本主题中,我们将深入探讨“mysql数据库及客户端...通过理解并遵循这些步骤,可以有效地搭建和管理自己的MySQL数据库系统。
MySQL数据库服务器的搭建和配置的知识点,涵盖了MySQL的基本概念、特点、安装、配置和使用等方面的知识点,并且讨论了动态网站和数据库服务器的关系,为读者提供了一个全面的 MySQL数据库服务器搭建指南。
本文将详细介绍如何使用Spring、SpringMVC和MyBatis三大框架来搭建这样一个系统,并结合MySQL数据库进行数据存储。 一、Spring框架 Spring作为Java领域中的核心框架,提供了依赖注入(Dependency Injection, DI)和...
通过在一台或多台从服务器上复制主服务器的数据,不仅可以实现读写分离以提高应用性能,还可以在主服务器出现故障时迅速切换到从服务器继续提供服务,从而保障业务连续性。 #### 二、准备工作与环境配置 1. **环境...
在Linux环境下,MySQL数据库的搭建是一项基础且重要的工作,它为各类Web应用提供稳定的数据存储支持。MySQL是一款开源、免费的关系型数据库管理系统,以其高效、可靠和易用性深受开发者喜爱。本文将详细介绍如何在...
虚拟化平台下MySQL数据库集群的搭建 本文将介绍虚拟化平台下MySQL数据库集群的搭建过程,探讨 Galera Cluster for MySQL 的解决方案,以提高数据的安全性和高可用性。虚拟化技术的应用可以提高计算机的工作效率,...
在Linux系统中,连接MySQL数据库通常涉及几个关键知识点,包括MySQL服务器的安装与配置、Java环境的搭建、数据库客户端工具的使用以及编程语言(如Java)的数据库连接API。这里我们将详细探讨这些方面。 首先,...
MySQL数据库的安装过程是一个至关重要的步骤,特别是在搭建服务器或开发环境中。以下是一个详细的MySQL数据库安装教程,涵盖了从选择安装类型到设置超级用户密码的关键环节。 首先,在安装MySQL之前,如果已有旧...
而在企业级应用中,数据库的应用又是必不可少的一环,其中 MySQL 作为一个开源的关系型数据库管理系统,由于其高效率、可靠性以及稳定性,成为了很多开发者的首选。 本文将详细介绍如何使用 .NET 控制台应用程序...
MySQL 数据库与 SQL 优化是提高数据库性能的关键一步骤。 SQL 优化可以通过优化数据库结构、索引、查询语句等方式来实现。下面是 MySQL 数据库与 SQL 优化的主要知识点: 1. 数据库结构优化:数据库结构的设计对...