由于项目以后可能会用到关于数据库备份,主要是用主从复制,来实现数据库的读写分离等功能。在这几天对mysql 的主从配置研究了下,我在电脑上配置了两个mysql 数据,配置还真有点麻烦。。关键还是对mysql 的数据库的了解不够,导致的,闲话不说了,现在开始配置。。
1.首先在本机(Windows)上配置两个数据库。
我下载的是mysql 的noinstall 版本的,安装版的好像要折腾一番,好麻烦,试了下,觉得不爽,就下载免安装版的了。
下载好以后,修改下mysql 的配置文件,把my-small.ini 复制下,改成my.ini,默认端口是3306,就不修改了。然后要开启服务,然后启动服务。开始用cmd 来写命令,后来觉得老是这样太麻烦了,又看了下bat 的语法。随便写了几个简单的bat 脚本。。在调试过程中方便好多。。把这些保存后放在解压后的mysql 根目录下。
(1)安装mysql1 服务
@echo off
bin\mysqld.exe --install mysql1 --defaults-file="D:\mysql5.1\mysql1\my.ini"
PAUSE
(2)移除mysql1 服务
@echo off
bin\mysqld.exe --remove mysql1
PAUSE
(3)启动mysql1服务
@echo off
net start mysql1
PAUSE
(4)停止mysql 1服务
@echo off
net stop mysql1
PAUSE
第二个mysql 的也一样,不过要注意的是,服务名要不一样才行。我起的名是mysql2,而且my.ini 的端口也要不同,我的是3307.
ps:我的两个mysql 是完全隔离的,完全复制两个免安装版本,好像说一个免安装文件就行了,配置路径不同就行了。
遇到问题:在mysql 启动的过程中,遇到了1067 的错误码提示。。我的解决方案是配置下my.ini 增加下面几项,然后重启服务,解决问题。
[mysqld]
#设置basedir指向mysql的安装路径
basedir=D:\mysql5.1\mysql1
datadir=D:\mysql5.1\mysql1\data
还遇到个问题是,初始帐号密码的修改。。可以用cmd 命令行修改。
c:/mysql/mysql1/bin> mysqladmin -u root password newpass
上面在同一台机上安装好了两个mysql 的数据库了。 下面开始配置主从。。
2.mysql数据库主从配置
(1)master 配置
首先,为了复制的安全性,给slave 个专门创建个复制mysql 的帐号,并赋予权限。
CREATE USER 'repl'@'localhost' IDENTIFIED BY 'root';
GRANT REPLICATION ON *.* TO 'repl'@'localhost'
接下来,配置my.ini
#数据库主从配置开始
#本机数据库ID 标示为主
server-id = 1
#二进制需要同步的数据库名
binlog-do-db=yyweb
# Uncomment the following if you want to log updates
#启动二进制日志系统
log-bin=mysql-bin
#数据库主从配置结束
然后重启下mysql1 的服务。然后进入mysql 命令行,输入以下命令查看状态。
mysql> show master status\G
*************************** 1. row **************************
File: mysql-bin.000002
Position: 671
Binlog_Do_DB: yyweb
Binlog_Ignore_DB:
1 row in set (0.00 sec)
(2)slave 配置
首先,配置my.ini
server-id = 2
#从服务器ID号,不要和主ID相同
master-host =127.0.0.1
#指定主服务器IP地址
master-user =repl
#制定在主服务器上可以进行同步的用户名
master-password =root
#密码
master-port =3306
#同步所用的端口
master-connect-retry=60
#断点重新连接时间
replicate-ignore-db=mysql
#屏蔽对mysql库的同步
replicate-do-db=yyweb
#同步数据库名称
然后重启下mysql2 的服务。然后进入mysql 命令行,输入以下命令查看状态。
mysql> show slave status
如果成功的话,可以查看到其中的两列
SLAVE_IO_RUNNING:YES
SLAVE_SQL_RUNNING:YES
如有其中有一列为NO,说明是连接不成功的。则检查下my.ini 的配置。
以下是成功连接后,在master 添加数据后,slave 的状态
mysql> show slave status\G;
*************************** 1. row ***************************
Slave_IO_State: Waiting for master to send event
Master_Host: 127.0.0.1
Master_User: repl
Master_Port: 3306
Connect_Retry: 60
Master_Log_File: mysql-bin.000002
Read_Master_Log_Pos: 671
Relay_Log_File: trye-relay-bin.000008
Relay_Log_Pos: 816
Relay_Master_Log_File: mysql-bin.000002
·········以下省略
遇到问题:开始的时候把master 的用户名密码写错了,查看slave 的状态的时候老是SLAVE_SQL_RUNNING:NO,经过一段时间检查,发现mysql 的日志这东西还真不错。。哈哈。。mysql 的日志文件在data 下面非文件夹。。一个个查看便是。。其中有一个master.info 的文件,记录了该主服务器的信息,还有一些错误日志等,如果有错误信息可以很清楚的看到。
mysql 主从配置完毕,总结一点是,对mysql 的配置文件不熟,以上也是参考网上进行配置的,所以有写具体的问题,未能清楚说明,还有待深入了解mysql 的官方文档。。
分享到:
相关推荐
主要介绍了MySQL5.1主从同步出现Relay log read failure错误解决方法,需要的朋友可以参考下
- **主从复制**:MySQL 5.1引入了半同步复制,确保主服务器上的事务在被复制到从服务器之前已经提交,提高了数据的一致性。 - **多线程复制**:从服务器可以并行处理多个二进制日志事件,加速了复制过程。 4. **...
MySQL 5.1是MySQL数据库管理系统的一个重要版本,它在5.0的基础上进行了多项改进和增强,为开发者提供了更高效...这个“mysql5.1详解简体中文版”的教程文件,将帮助读者深入理解这些概念,提升数据库管理和开发技能。
MySQL 5.1是MySQL数据库管理系统的一个重要版本,它提供了许多功能和改进,旨在...通过学习,用户可以熟练掌握MySQL 5.1的安装、配置、使用、优化、备份恢复等各项技能,为实际工作中的数据库管理和开发提供坚实基础。
“复制与集群”部分介绍了MySQL的主从复制,使得数据可以在多个服务器间同步,增强了可用性和容错性。同时,还涉及到了MySQL集群的配置和管理,以实现高可用性和负载均衡。 除此之外,文档还包括了错误代码参考、...
8. **复制与集群**:MySQL 5.1支持主从复制,用于数据冗余和故障恢复,以及集群配置,以实现高可用性和负载均衡。 9. **性能调优**:提供查询分析、查询缓存、索引优化和内存管理等方面的策略,帮助用户提升MySQL的...
MySQL 5.1 noinstall 版本是一种精简版的安装包,主要用于那些希望自定义配置MySQL服务器的用户。在不使用图形化安装界面的情况下,通过命令行进行安装和配置可以提供更高的灵活性。以下是关于MySQL 5.1 noinstall...
MySQL 5.1的复制功能允许数据在多个服务器之间同步,形成主从结构或主主结构,从而提高系统的稳定性和容错性。 安全性和权限管理也是手册中的重要内容。用户可以学习如何设置账户、权限和访问控制,确保数据库系统...
在这个"MYSQL5.1 CHM版中文帮助文档.zip"压缩包中,包含了一个名为"MYSQL5.1 CHM版中文帮助文档.chm"的文件,它提供了关于MySQL 5.1的详细中文指南。 MySQL 5.1的知识点涵盖了以下几个主要方面: 1. **安装与配置*...
6. **复制技术**:MySQL 5.1支持主从复制,用于数据备份、负载均衡和高可用性。理解复制原理,包括基于语句的复制和基于行的复制,以及如何配置和监控复制链路。 7. **分区与分表**:大型数据库可能需要分区或分表...
MySQL 5.1是MySQL数据库管理系统的一个重要版本,它的源代码提供了深入了解数据库系统工作原理的宝贵资源。MySQL是一个流行的开源关系型数据库管理系统(RDBMS),以其高效、可靠和易于管理而闻名。在这个版本中,...
9. **复制与高可用**:MySQL 5.1支持主从复制,可以实现数据的实时同步,提高系统的可用性和容错性。手册将阐述复制的配置和维护。 10. **故障排查**:当遇到问题时,手册会提供诊断和解决问题的策略,如查看错误...
CHM文件“MySQL”可能包含MySQL 5.1的官方文档,包括详细的安装指南、配置说明、SQL语法参考、错误代码列表以及最佳实践等内容。这些资源对于学习和维护MySQL 5.1数据库系统非常宝贵,可以帮助用户从基本操作到高级...
MySQL 5.1是MySQL数据库管理系统的一个重要...这个“MYSQL5.1CHM中文版你值得拥有.chm”文件包含了所有这些内容,是深入了解和掌握MySQL 5.1不可或缺的参考资料。无论是初学者还是经验丰富的DBA,都能从中受益匪浅。
在这个例子中,"MySQL5.1官方中文版"应该是包含了安装程序的压缩包。 2. **解压文件**:下载完成后,使用解压缩工具(如WinRAR或7-Zip)打开压缩包,提取所有文件。文件“说明.htm”可能会包含详细的安装指南和注意...
4. **复制改进**:MySQL 5.1在主从复制方面进行了优化,支持半同步复制,确保数据在主服务器和从服务器间的一致性,同时增加了多线程奴隶复制,提高复制性能。 5. **触发器和存储过程**:MySQL 5.1提供了触发器和...
8. **复制与集群**:MySQL 5.1支持主从复制,可以实现数据冗余和故障转移。手册会介绍复制的配置和监控,以及集群技术,如MySQL Cluster,用于高可用性和负载均衡。 9. **安全性**:手册会讲解用户权限管理,包括...
4. **性能优化**:MySQL5.1提供了一些性能优化工具和配置选项,如查询缓存的改进,能够更快地响应重复查询;还有EXPLAIN语句,帮助分析查询执行计划,找出性能瓶颈。 5. **安全与权限管理**:MySQL5.1在用户权限...
本文将深入探讨Mysql 5.1.7及以上版本的主从双向同步配置方法,为数据库管理员提供一份详尽的指南。 ### Mysql主从同步基本原理 在Mysql的主从复制模型中,主服务器(Master)负责写入操作,而从服务器(Slave)...