`
yimi128
  • 浏览: 56119 次
  • 来自: ...
社区版块
存档分类
最新评论

[zz]MySQL数据库主从同步安装与配置总结

    博客分类:
  • DB
 
阅读更多
注意:本文出自“阿飞”的博客 ,如果要转载本文章,请与作者联系!
并注明来源: http://blog.sina.com.cn/s/blog_49fd52cf0100pog2.html

MySQL的主从同步是一个很成熟的架构,优点为:
①在从服务器可以执行查询工作(即我们常说的读功能),降低主服务器压力;
②在从主服务器进行备份,避免备份期间影响主服务器服务;
③当主服务器出现问题时,可以切换到从服务器。
所以我在项目部署和实施中经常会采用这种方案.

+ 数据库目录及其它
my.cnf配置文件     /etc/my.cnf
mysql数据库位置    datadir=/var/lib/mysql

主数据库:192.168.2.119
从数据库:192.168.2.220
操作系统:RHEL5.x 32位
服务器类型: 虚拟机

+ mysql5.0.77 安装:
① 配置好linux的yum服务后,直接yum -y install mysql即可
附:安装php\mysql一条命令安装:yum -y install httpd php mysql mysql-server php-mysql

② 启动MySQL
service mysqld start(restart|stop)


一、设置主库
1、修改主库my.cnf,主要是设置个不一样的id和logbin(#这部可依具体环境而定,压力大的化可采用huge.cnf)
[root@localhost etc]#vi /etc/my.cnf
# 记住这部分一定要配置在[mysqld]后面,否则无法找到从节点,各个配置项的含义可自己查阅文档
[mysqld]
log-bin=mysql-bin
server-id=1
binlog-ignore-db=information_schema
binlog-ignore-db=cluster
binlog-ignore-db=mysql

2、启动主库生效
[root@localhost etc]service mysqld restart

3、登陆主库
[root@localhost etc]mysql -u root -p

4、赋予从库权限帐号,允许用户在主库上读取日志
mysql> grant all privileges on *.* to '用户名'@'%' identified by '密码'; 

5、检查创建是否成功
select user,host from mysql.user;

6、锁主库表 
mysql> flush tables with read lock; 

7、显示主库信息
记录File和Position,从库设置将会用到
mysql> show master status;
+------------------+----------+--------------+------------------+
| File             | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+------------------+----------+--------------+------------------+
| mysql-bin.000001 98   |              |                  | 
+------------------+----------+--------------+------------------+
1 row in set (0.00 sec)

# 说明,如果执行这个步骤始终为Empty set(0.00 sec),那说明前面的my.cnf没配置对。

8、另开一个终端登陆220,打包主库迁移数据(如果你使用的yum安装,有默认数据库并未做任何改动,则不需要进行拷贝)
目的是为了保证两台服务器的mysql数据库一致,这里可以自行tar打包或者使用mysqldump命令备份恢复的方式进行。


二、设置从库
1、传输拿到主库包、解包
# 登陆从库
从上一步中备份的数据库恢复到220服务器节点上。

2、在119节点上解锁主库表(对应第一点设置主库中第6步锁主库表的操作) 
mysql> unlock tables; 

3、在220节点上修改从库my.cnf(位置一样)
[root@localhost etc]vi my.cnf 
# 记住这部分一定要配置在[mysqld]后面,否则无法找到从节点,各个配置项的含义可自己查阅文档
[mysqld]
log-bin=mysql-bin
server-id=2
binlog-ignore-db=information_schema
binlog-ignore-db=cluster
binlog-ignore-db=mysql
replicate-do-db=test
replicate-ignore-db=mysql
log-slave-updates
slave-skip-errors=all
slave-net-timeout=60

master-host=192.168.2.119
master-user=root
master-password=pfingo

4、在220节点上验证连接主库
[root@localhost etc]mysql -h 192.168.2.119 -u 用户名 -p 

5、在220节点从库上设置同步
#设置连接MASTER MASTER_LOG_FILE为主库的File,MASTER_LOG_POS为主库的Position
#注意下面第二条命令语句中的master_log_file='mysql-bin.000001', master_log_pos=98;对应为前面在主库中执行的show master status;结果
mysql> slave stop;
mysql> change master to master_host='192.168.2.119',master_user='root',master_password='pfingo',master_log_file='mysql-bin.000001', master_log_pos=98;
mysql> slave start;

6、启动从库服务
mysql> slave start;

7、进行测试
在主库上的test库上建立名为myTest的表
mysql> CREATE TABLE `myTest` (
`id` INT( 5 ) UNSIGNED NOT NULL AUTO_INCREMENT ,
`username` VARCHAR( 20 ) NOT NULL ,
`password` CHAR( 32 ) NOT NULL ,
`last_update` DATETIME NOT NULL ,
`number` FLOAT( 10 ) NOT NULL ,
`content` TEXT NOT NULL ,
PRIMARY KEY ( `id` ) 
) ENGINE = MYISAM ;

在从表中马上看到了效果,主从同步成功了;
为了更进一步验证在从库上输入show slave status\G;
mysql> show slave status\G;
Slave_IO_Running: Yes(网络正常);
Slave_SQL_Running: Yes(表结构正常)

进一步验证了以上过程的正确性。
分享到:
评论

相关推荐

    服务器:在树莓派上安装MySQL数据库和简单使用方法 过程详细

    以下将详细讲解这个过程,包括安装、配置、使用MySQL的基本步骤。 首先,确保你的树莓派运行的是最新版本的Raspberry Pi OS。更新系统可以使用以下命令: ```bash sudo apt update sudo apt upgrade ``` 接着,...

    Java图形界面学生签到考勤系统MySQL数据库.zip

    部署时,需考虑服务器配置、数据库安装和系统权限设置等问题。 综上所述,这个Java图形界面学生签到考勤系统是一个集成了多种技术的综合性项目,涵盖了数据库管理、图形用户界面设计、生物识别技术应用等多个领域。...

    ZZ-2022032 智能家居安装与维护赛项赛题.zip

    智能家居安装与维护赛项是一项旨在培养中职学生在智能设备安装、配置、调试及故障排除等方面技能的比赛。这个“ZZ-2022032 智能家居安装与维护赛项赛题.zip”文件可能包含了今年比赛的详细资料,包括规则、设备清单...

    MySQL面试题(含答案)

    MySQL 是一个 DBMS(数据库管理系统),由瑞典MySQLAB 公司开发,目前属于 Oracle 公司,MySQL是最流行的关系型数据库管理系统(关系数据库,是建立在关系数据库模型基础上的数据库,借助于集合代数等概念和方法来...

    Mysql解压缩版配置向导

    MySQL解压缩版配置向导是针对那些选择不使用安装程序而是直接解压MySQL安装包进行安装的用户提供的指南。这种方式在某些情况下更为灵活,比如在没有权限运行安装程序或者需要自定义配置的情况下。以下是一份详细的...

    Centos7安装mysql5.7yum list installed - grep mysql

    在CentOS7上安装MySQL 5.7是一个常见的任务,特别是在搭建服务器环境时。本文将详细解释如何通过YUM在CentOS7上...按照上述步骤操作,可以顺利完成MySQL的安装和配置,为你的CentOS7系统提供一个稳定可靠的数据库服务。

    MySQL/PHP数据库应用开发指南(PDG)

    《MySQL/PHP数据库应用开发指南》是一本专为开发者设计的教程,主要聚焦于如何利用PHP编程语言与MySQL数据库系统协同工作,构建数据驱动的Web站点。MySQL是一种广泛使用的开源关系型数据库管理系统,而PHP则是一种...

    Apache+Php+Mysql在Windows下配置

    3. 使用MySQL命令行客户端或图形化工具(如MySQL Workbench)连接数据库,验证MySQL配置。 安装PHPMyAdmin: 1. 下载PHPMyAdmin的zip文件,解压至DocumentRoot目录下,如创建一个名为phpmyadmin的子目录。 2. 修改...

    VisualStudio安装和配置zz[汇编].pdf

    下面是关于 Visual Studio 安装和配置的知识点总结: 安装要求 在安装 Visual Studio 之前,需要安装必需的 Windows 组件,包括 ASP.NET、IIS、应用程序服务器等。同时,需要安装 SQL Server 2000、SQL Server ...

    mysql/sql2000/sql2005/oracle数据库驱动包

    "oracle"、"ms-sqlserver"、"mysql"、"sqlserver2005"可能是对应数据库系统的驱动程序或相关配置文件,用户需要按照Readme中的指示进行安装和配置,以便在应用程序中正确地连接和操作这些数据库。 综上所述,这个...

    asp.net 二手车源码 三层+Nhibernate+MVC框架(含数据库)

    Nhibernate会根据配置文件中的映射信息与数据库进行交互,处理数据存储和检索。 **源码分析** 在源码中,`ZZ2SC`可能是指项目的主程序或者特定模块的命名。要深入理解源码,你需要查看各个层次的代码,包括控制器...

    ORACLE数据库复制

    流复制利用归档日志进行增量备份,可以配置复制特定表或DDL/DML操作,支持表、用户和数据库级别的复制,对数据库的影响较小,但实时性和稳定性不如高级复制。 **高级复制配置过程**涉及以下步骤: 1. **配置相互...

    ZZ-2022006 建筑智能化系统安装与调试赛项赛题.zip

    《ZZ-2022006 建筑智能化系统安装与调试赛项赛题》 本赛题主要针对中职学生,旨在提升他们在建筑智能化领域的专业技能和实践能力。建筑智能化系统安装与调试赛项是现代建筑业的重要组成部分,随着科技的发展,智能...

    base zz zz zz zz

    base zz zz zz zz zz base zz zz zz zz zz base zz zz zz zz zz base zz zz zz zz zz

    ZZ-2022019 电气安装与维修赛项赛题.zip

    《ZZ-2022019 电气安装与维修赛项赛题》是一个针对中职学生设计的技能大赛项目,旨在考核参赛者在电气安装和维修方面的专业技能。这个赛题不仅要求参赛者具备扎实的理论基础,还强调实际操作能力和问题解决能力。...

    采用ado与sql数据库连接人事管理系统

    ADO是Microsoft提供的一种数据访问接口,它允许程序员通过编程语言与各种数据库系统(包括SQL Server、Oracle、MySQL等)进行通信。 在描述中提到的“简单的数据库连接”可能意味着该系统的核心功能是建立和维护...

    php 不能连接数据库 php error Can’t connect to local MySQL server

    php $link=mysql_connect(‘localhost’,’root’,’zz’) or die(mysql_error()); mysql_select_db(‘test’) or die(‘no db’); mysql_query(‘SET NAMES utf8’); echo 99; ?> 运行后报错 Can’t connect to ...

    springboot基于java的招聘求职系统_886zz792毕业设计源码数据库.zip

    采用Java作为主要开发语言,结合Spring Boot框架和MySQL数据库技术,不仅确保了系统的高效运行和良好的用户体验,也保障了系统的可维护性和扩展性。 jdk版本:jdk1.8+ 编程语言: java 框架支持:springboot 数据库: ...

    NodeJS安装及环境配置(windows)

    本文将详细介绍如何在 Windows 10 Pro(64 位)系统上安装 Node.js 并进行环境配置。 一、安装环境 在安装 Node.js 之前,确保您的计算机满足以下条件: 1. 操作系统:Windows 10 Pro(64 位) 2. Node.js 版本:v...

Global site tag (gtag.js) - Google Analytics