`
AllenHU0320
  • 浏览: 86886 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

MySQL复制特性初体验

 
阅读更多

MySQL复制在处理数据时,有三种不同的模式:

基于语句复制(Statement Based Replication):基于实际执行的SQL语句的模式方案,SBR

基于记录复制(Row Based Replication):基于修改的列的复制格式,RBR

基于上述两种方式混合的复制模式(Mixed Based Replication)MBR

 

数据复制模式跟日志文件记录格式相关

1.关闭数据库服务

[mysql@mysql1 ~]$mysql_db_shutdown.sh

[mysql@mysql1 ~]$netstat –tlnp | grep 3306

2.复制数据库文件

[mysql@mysql1 ~]$cp –R /data/mysqldata/3306 /data/mysqldata/3307

首先务必确保Master节点已经启用了二进制日志文件记录功能,在my.cnf中的[mysqld]中设置server_id

server_id=2013306

log-bin = /data/mysqldata/3306/binlog/mysql-bin

启动Master数据库

[mysql@mysql1 ~]$mysql_db_startup.sh

3.创建复制专用账户

OracleDG中,REDO日志是由Primary主动发给Standby,而且Primary生成的REDO日志,都应该发给哪些StandbyPrimary对此一清二楚。MySQL中的Slave若想获取二进制日志,它是得主动连接Master节点去请求数据,就向发起查询一样,Master也不知道二进制日志都应该发送给谁,只要有人拥有权限发起请求,它就会给。Slave通过连接Master来获取所需的日志信息,Slave会将关于Master的配置,都保存在master.info文件中。

(system@localhost) [(none)]> grant replication slave on *.* to 'rep1'@'192.168.1.%' identified by 'rep1';

查看当前Master端正在使用的二进制日志文件以及写入的位置,FilePosition两列值非常重要,后面配置Slave节点时要用到。

(system@localhost) [(none)]> show master status;

+------------------+----------+--------------+------------------+-------------------+

| File             | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |

+------------------+----------+--------------+------------------+-------------------+

| mysql-bin.000014 |      330 |              |                  |                   |

+------------------+----------+--------------+------------------+-------------------+

4.配置Slave端选项文件

修改Slavemy.cnf文件的端口及server_id

[mysql@mysql1 ~]$ vim /data/mysqldata/3307/data/my.cnf

命令行模式下%s/3306/3307/g

[mysql@mysql1 ~]$ rm -rf /data/mysqldata/3307/data/auto.cnf,用来唯一标识MySQL服务

5.启动Slave端服务

[mysql@mysql1 ~]$mysql_db_startup.sh 3307

[mysql@mysql1 ~]$ mysql -usystem -p123456 -S /data/mysqldata/3307/mysql.sock

(system@localhost) [(none)]> change master to

    -> master_host='192.168.1.201',

    -> master_port=3306,

    -> master_user='rep1',

    -> master_password='rep1',

    -> master_log_file='mysql-bin.000014',

-> master_log_pos=330;

(system@localhost) [(none)]>start slave;

6.复制环境数据同步测试

Master端创建一个表对象

(system@localhost) [(none)]>prompt Master >

Master>create table hugc_test (id int);

Master>insert into hugc_test values (1);

Slave端查看有没有这个对象

(system@localhost) [(none)]>prompt Slave >

Slave>select * from hugc_test;

Slave>show slave status;

Slave>show slave status\G

分享到:
评论

相关推荐

    MySQL8.0新特性

    MySQL 8.0是MySQL数据库管理系统的一个重大更新版本,它带来了许多新的特性和改进,旨在提升性能、可扩展性以及用户体验。以下是一些主要的新特性介绍: 1. **增强的性能** - **优化的查询执行引擎**:MySQL 8.0...

    实战体验几种MysqlCluster 方案.docx

    MySQL Fabric 是 Oracle 在 2014 年 5 月推出的一套为各方寄予厚望的 MySQL 产品,用来管理 MySQL 服务,提供扩展性和容易使用的系统,Fabric 当前实现了两个特性:高可用和使用数据分片实现可扩展性和负载均衡,这...

    MySQL 5.7(GA)版本新特性

    通过上述内容的介绍,可以看出MySQL 5.7 GA版本在保证数据库服务稳定性和数据安全性的同时,通过增强现有功能和引入新功能,极大地提升了数据库的性能和用户体验。对于从事数据库管理的技术人员来说,了解这些新特性...

    MySQL 的系统特性.docx

    ### MySQL的系统特性详解 #### 一、源代码的可移植性 - **技术背景**:MySQL使用C和C++语言编写,这两种语言是计算机科学领域最基础且广泛应用的编程语言之一,具备良好的跨平台特性。 - **实现原理**:通过使用...

    mysql 8.4.0 winx64

    在这个版本中,MySQL提供了一系列的性能改进、新的特性和优化,旨在提升用户体验和数据处理能力。 首先,让我们深入了解一下MySQL的基础知识。MySQL基于SQL(结构化查询语言)标准,允许用户通过简单的命令进行数据...

    mysql-shell:mysql-shell-8.4.0-windows-x86-64bit.zip

    8. **复制和集群管理**:MySQL Shell包含对InnoDB集群的全面支持,允许用户轻松设置、监控和管理复制集群。 9. **脚本和自动化**:用户可以编写脚本来自动化数据库维护任务,例如定期备份、数据清理等。 10. **...

    MySql5.7.38版本

    MySQL 5.7.38 是 MySQL 数据库管理系统的一个重要版本,它在先前的版本基础...在 Unity 开发中,通过 MySql.Data.dll,开发者可以直接在游戏项目中集成 MySQL 数据库,实现动态数据存储和读取,提升游戏体验和可玩性。

    实战体验几种MysqlCluster 方案.zip

    数据分片是MySQL Cluster的核心特性,它将数据分布在多个节点上,每个节点只存储一部分数据,从而实现负载均衡和容错。通过合适的分片策略,可以确保数据读写性能和系统的可扩展性。 3. **高可用性与复制** MySQL...

    mysql版本收集-mysql8.0.21windows版本

    9. **复制改进**:MySQL 8.0 引入了增强的复制功能,如GTID(全局事务标识符)和半同步复制,8.0.21 版本在此基础上可能有进一步的优化,提供更稳定的数据同步和故障恢复。 10. **备份与恢复**:MySQL 8.0.21 提供...

    mysql8.0 附带一键安装脚本

    MySQL 8.0 是 MySQL 数据库管理系统的最新版本,提供了许多增强的功能和性能优化,旨在为开发者和企业级用户提供更高效、安全的数据存储和管理体验。这个“mysql8.0 附带一键安装脚本”可能包含了一个简化 MySQL 8.0...

    MySQL 8.0.28 Windows 版本

    8.0.28版本继续优化这些特性,为用户带来更好的体验。例如,它加强了身份验证插件,如内置的 caching_sha2_password,提供了更高级别的数据安全。此外,MySQL 8.0支持窗口函数,使复杂的数据分析和聚合操作变得更加...

    mysql5.6版本.zip

    6. **半同步复制**:MySQL 5.6引入了半同步复制特性,确保主库上的事务在至少被一个从库确认接收之前不会提交,增强了复制的可靠性。 7. **监控和诊断工具**:提供了更丰富的系统状态变量和性能_schema表,便于...

    mysql-5.5.20-win32.msi下载

    数据库复制是MySQL的一个关键特性,5.5.20版本中,主从复制的性能和稳定性得到了显著提升,包括半同步复制选项,可以确保数据在主从之间的一致性。 5. **安全性和认证**: MySQL 5.5.20引入了更强大的安全特性,...

    MySql.Data.dll各版本.rar_MYSQL_MYSql.data.ll_MySql.Data.dll

    不同版本的MySQL.Data.dll对应不同的MySQL Server版本,这主要是因为每次MySQL服务器的升级可能会引入新的特性和API,或者对旧功能进行优化。例如,新版本的DLL可能包含对新数据类型、加密算法或性能改进的支持。...

    mysql8.0.rar

    安装“mysql-installer-community-8.0.16.0.msi”后,用户可以体验到这些新特性和性能提升。安装过程中,用户可以选择安装MySQL Server、MySQL Workbench(数据库管理工具)、Connector/ODBC(驱动程序)等组件,...

    mysql8.0jdbc驱动.zip

    在Java应用中,JDBC驱动使得开发者能够充分利用MySQL 8.0的新特性,如JSON列类型、窗口函数、增强的性能和安全性。同时,MySQL 8.0 JDBC驱动也支持连接池,这在高并发场景下提高了性能和资源利用率。 总的来说,...

    MySQLAdministrator5.0汉化中文语言包

    MySQL Administrator 包含了多个关键特性,如数据库备份、性能监控、用户管理以及数据导入导出等。使用汉化版,用户可以更加直观地理解各种菜单选项和提示信息,提高工作效率。例如,备份功能允许用户定期创建数据库...

    mysql-wins-32-64

    MySQL是一个广泛使用的开源关系型数据库管理系统(RDBMS),以其高效、稳定和易于管理的特性在全球范围内被广泛应用。以下是关于MySQL在Windows环境下安装和使用的一些关键知识点: 1. **MySQL版本选择**: - 32位...

    MySql数据库(5.5)

    总的来说,MySQL 5.5是一个强大而可靠的数据库系统,它的优化提升了性能,新的特性增强了用户体验。结合MySQL-Front这样的可视化工具,用户可以更加便捷地管理和操作数据库。对于开发者和企业而言,MySQL 5.5提供了...

    mysql-fornt 3.2

    - 提供了更丰富的数据类型支持,适应MySQL 5.1引入的新特性的管理。 - 界面更加现代化,用户体验得到提升,同时保持了易用性。 - 强化了错误处理和提示,使用户能更快速定位并解决问题。 在使用MySQL Front时,...

Global site tag (gtag.js) - Google Analytics