`
oboaix
  • 浏览: 276195 次
社区版块
存档分类
最新评论

WindowXP与Window2003设置MYSQL主从备份

 
阅读更多

公司要求mysql备份机制,最近结合项目和网上学习资料,实现一个windows环境下的mysql主从备份,

操作系统:windows XP sp2, Windows Server 2003 企业版(32位)

数据库:mysql-5.6.12

(2013-06-06)

 

具体步骤如下:

 

 

 绿色版安装Mysql 5.6.12-log

详细步骤:

1, 解压mysql-5.6.12-win32.zip,207M;

2,本地设置安装

     简单设置几个参数:

[client]     port  = 3306

              default-character-set=utf8    #增加参数       

[mysqld]  basedir=E:\\mysql\\mysql-5.6.12\\
              datadir=E:\\mysql\\mysql-5.6.12\\data\\

              character-set-server=utf8

              port  = 3306

[WinMySQLadmin]              Server=E:\\mysql\\mysql-5.6.12\\bin\\mysqld.exe

 

3,安装数据库

#进入DOS环境,进入相应bin目录, D:\database\mysql-5.5.25-master\bin 运行下面脚本,生成Services.msc启动服务,命名为mysqlm,

mysqld --install mysqlm --defaults-file="D:\database\mysql-5.5.25-master\my.ini"

mysqld --install msmaster --defaults-file="E:\mysql\mysql-5.6.12\my.ini"

mysqld --install msslave --defaults-file="C:\trs\data\mysql-5.6.12\my.ini"

如果有不正确的,删除

mysqld --remove mysqlm;   mysqld --remove msmaster; mysqld --remove msslave;

net stop mysqlm; net start mysqlm; 

OK;测试完全成功之后,可能要把bin目录增加的系统path路径下面。

4,完全拷贝到另外机器

    调整对应my.ini参数,指定basedir, datadir

   同上步骤,测试通过;

   预备课程完全成功,如果两台机器不能互访,可能要修改账号登录方式,

    update user set host='%' where user='root' and host='localhost';

    flush privileges;

    重启应用通过测试。

5,开始设置主服务器

 

主数据库IP:10.199.130.183 winXP
从数据库IP:10.199.130.142 win2003

主数据库配置my.ini:

更改主服务器端口:port  = 3307

在[mysqld]下添加配置数据:
server-id=1  #配一个唯一的ID编号,1至32。
#log-bin=mysql-bin  #二进制文件存放路径

log-bin = E:\\mysql\\mysql-5.6.12\\\log\\bin.log
#设置要进行或不要进行主从复制的数据库名,同时也要在Slave 上设定。
binlog-do-db=test

binlog-do-db=test1

#binlog-ignore-db=数据库名1
#binlog-ignore-db=数据库名2
保存,重启数据库服务。

在cmd下登录数据库:
mysql mysql -u[用户名] -p[密码]  如: mysql -uroot -pxxx
在主数据库中建立一个备份账户:

mysql>use mysql;
mysql>grant replication slave,reload,super on *.* to slave@10.199.130.142 identified by 'slave' ;

####如果换成不同端口,记得修改为 : mysql>grant replication slave,reload,super on *.* to slave@% identified by 'slave' ;

至少得上从服务器能访问到具体的主服务器的数据库。


mysql>flush privileges;
mysql>show master status;  # 找到File 和 Position 的值记录下来;

mysql> show master status;
+------------------+----------+--------------+------------------+-------------------+
| File                      | Position  | Binlog_Do_DB| Binlog_Ignore_DB | Executed_Gtid_Set |
+------------------+----------+--------------+------------------+-------------------+
| mysql-bin.000007 |      578 |              |                  |                   |
+------------------+----------+--------------+------------------+-------------------+

 

从数据库配置my.ini:

更改从服务器端口:3308
[mysqld]
server-id=2  #唯一

#log-bin=mysql-bin  #二进制文件存放路径

log-bin=C:\\trs\\data\\mysql-5.6.12\\log\\bin.log
#设置要进行或不要进行主从复制的数据库名,同时也要在Master 上设定。
replicate-do-db=test

replicate-do-db=test1
#replicate-ignore-db=数据库名1
#replicate-ignore-db=数据库名2
保存,重启数据库服务。在mysql5.1以上版本中是不支持1中master设置的,如果添加了master设置,数据库就无法重启了; 

在cmd下登录数据库:
mysql mysql -u[用户名] -p[密码]

mysql>change master to master_host='10.199.130.183',master_user='slave',master_password='slave', master_log_file='mysql-bin.000007',master_log_pos=578,,master_port=3307;
mysql> start slave;
mysql> show slave status\G

因为是拷贝过来,生成的auto.cnf完全一致,需要删除掉这个链接,重新启动数据库,$basedir\data\auto.cnf

检查server_uuid必须不一致,,可能出错1593.

第二种方式:mysql_upgrade -uroot -ppassword//更新一下数据库,网上看的,没有做实验。

mysql> show variables like '%server%';
+---------------------------------+--------------------------------------+
| Variable_name                   | Value                                |
+---------------------------------+--------------------------------------+
| character_set_server            | utf8                                 |
| collation_server                | utf8_general_ci                      |
| innodb_ft_server_stopword_table |                                      |
| server_id                       | 1                                    |
| server_id_bits                  | 32                                   |
| server_uuid                     | 1a14b7d6-ce56-11e2-bf02-b8ac6f441aba |
+---------------------------------+--------------------------------------+

 

---启动异常时,记得需要检查日志文件:basedir\data\机器名.err

可能错误:

lave I/O: Got fatal error 1236 from master when reading data from binary log: 'Could not find first log file name in binary log index file', Error_code: 1236

一般是主机的file文件错误了,注意每个字符的格式。

 

6,

mysql> show slave status\G
如果出现:
Slave_IO_Running: Yes
Slave_SQL_Running: Yes
以上两项都为Yes,那说明没问题了。如果指定了个别的数据库,还可以看到
注:如果出现Slave_SQL_Running:connecting的现象,首先在从库命令行下输入:
#mysql -uslave  -pslave
看是否能登入mysql,如果是拒绝等提示,那要查看主机上的第从库授权操作是否用户的权限等设置正确

配置成功后,修改主数据库信息,从数据库会自动更新。

 

7.

mysql> show slave status\G
*************************** 1. row ***************************
               Slave_IO_State: Waiting for master to send event
                  Master_Host: 10.199.130.183
                  Master_User: slave
                  Master_Port: 3306
                Connect_Retry: 60
              Master_Log_File: bin.000001
          Read_Master_Log_Pos: 2460
               Relay_Log_File: apj142-relay-bin.000002
                Relay_Log_Pos: 277
        Relay_Master_Log_File: bin.000001
             Slave_IO_Running: Yes
            Slave_SQL_Running: Yes
              Replicate_Do_DB: test,test1

Slave_IO_Running和Slave_SQL_Running这两个都是YES的情况,就没有问题的。

 

其他参考文章:

http://blog.chinaunix.net/uid-25266990-id-335448.html

分享到:
评论

相关推荐

    windows下mysql主从同步备份步骤

    在Windows环境下,MySQL主从同步备份是一种常见的高可用性和数据冗余策略,确保数据的安全性和一致性。以下是详细步骤,适用于MySQL 5.0版本: 1. **创建备份账户**: 在主服务器A上,我们需要创建一个用于复制的...

    MySQL数据库的主从同步备份在windows下实现

    通过以上步骤,你可以在Windows环境下成功配置MySQL数据库的主从同步备份。这个配置对于确保业务连续性和数据安全性至关重要,特别是在面临单点故障风险时,从服务器可以立即接管,保证服务不中断。同时,这种架构也...

    mysql 主从复制环境搭建

    在 Windows 环境下,搭建 MySQL 主从复制功能需要准备系统环境、安装 MySQL 服务、配置主从复制等步骤。 步骤一:准备系统环境 1. 准备一台 PC,安装 Windows XP 32 位操作系统。 2. 安装 MySQL 5.0。 步骤二...

    mysql主从配置资源

    MySQL主从配置是数据库高可用性和负载均衡的一种常见策略,尤其在Windows环境下,为了实现读写分离、主从复制和一主多从架构,可以极大地提高数据库系统的性能和稳定性。结合Spring框架,我们可以轻松地在应用程序中...

    mysql 多主从一 windows

    mysql 多主从一 windows

    MySQL主从复制(Windows)详细实现步骤的讲解视频

    总结来说,MySQL主从复制在Windows环境下的实现包括:主服务器的二进制日志配置,复制用户的创建,从服务器的初始设置,以及复制进程的启动和监控。这一过程对于数据库的高可用性、数据安全和灾难恢复都至关重要。...

    MySQL5.7主从复制(Win10)及mybatis相关配置

    总结来说,MySQL5.7在Windows 10上的主从复制配置涉及多个步骤,包括MySQL服务的安装、配置、备份恢复和复制设置。同时,MyBatis的集成使我们可以轻松地利用主从复制实现读写分离,进一步优化系统的性能。通过这种...

    mysql主从服务器

    ### MySQL主从服务器搭建详解 #### 一、背景与需求分析 随着互联网应用规模的不断扩大,高并发场景下的数据处理成为了一个重要的挑战。对于大型网站而言,仅仅依靠单台数据库服务器难以满足日益增长的数据访问需求...

    mysql数据库主从备份操作

    本文将详细介绍如何在两台服务器(CentOS 与 CentOS 或 CentOS 与 Windows)之间进行 MySQL 数据库的主从备份操作。 #### 二、准备工作与发生错误的解决方式 ##### **1. 主从备份前的要求** - **主从数据库版本...

    MySql主从配置实践过程记录

    在Windows下通过MySql提供的主从复制技术实现数据库主从同步机制,文档中详细记录我在项目中配置的实践过程

    mysql主从同步镜像备份镜像备份终版.pdf

    ### MySQL主从同步镜像备份知识点详解 #### 一、MySQL主从同步基本概念 - **主从复制机制**:MySQL中的主从复制是一种数据复制技术,它将一个数据库(主服务器)的数据复制到另一个或多个数据库(从服务器),以此...

    MySQL 主从配置网关(Windows)

    MySQL主从配置在Windows环境下的实现是一个常见的数据库高可用性和数据冗余策略。这个过程涉及到一个主MySQL服务器,它处理所有写操作,并将更改复制到一个或多个从服务器上,这些从服务器仅执行读操作。这有助于...

    windows环境下MyCAT+mysql主从配置.pdf

    ### Windows环境下MyCAT+MySQL主从配置详解 #### 一、概述 在Windows环境下实现MySQL主从配置并结合Mycat作为数据库中间件的技术方案,是企业级应用中常见的架构模式之一。通过这种方式,不仅可以提高数据库系统的...

    win系统下的mysql主从同步配置

    在Windows系统下配置MySQL主从同步需遵循一定步骤,需要细心设置my.ini文件,合理配置server-id,创建具备复制权限的账号,并正确使用show master status及start slave等命令来保证数据同步。配置主从同步可以有效...

    201407Windows中 MySQL5.5主从服务器配置及主或从挂掉问题处理

    MySQL 5.5 在 Windows 上的主从配置是一项重要的数据库管理任务,用于实现数据的冗余和高可用性。在这个过程中,我们需要设置一个主服务器(Master)和一个或多个从服务器(Slave),主服务器负责处理写操作,而从...

    基于Mycat的Mysql主从复制读写分离配置详解与示例

    在软件环境方面,我们可以使用Windows7操作系统,Mycat-server 1.6版本,以及JDK1.8,Mysql版本为5.6,并且需要至少两台Mysql服务器来配置主从复制。 在Mysql主从复制配置方面,我们需要在主库服务器上进行以下操作...

    Windows环境下,安装MySQL多实例,并实现Mysql的主从同步

    ### Windows环境下安装MySQL多实例并实现主从同步 在企业级应用中,为了提高数据库系统的稳定性和可用性,经常需要部署MySQL的主从同步架构。本文档将详细介绍如何在Windows环境下安装MySQL多实例,并实现主从同步...

    Windows下MySql自动备份脚本(有备份日志,且可以删除历史备份).zip

    "Windows下MySql自动备份脚本(有备份日志,且可以删除历史备份)"的资源提供了一个解决方案,它是一个批处理脚本(MysqlAutoBackup.bat),能够自动化执行MySQL的备份过程,同时生成备份日志并清理历史备份。...

    Windows下Mysql自动备份数据脚本

    1.备份MySQL到指定的目录。 2.支持压缩备份。无需安装压缩软件支持CAB压缩备份。或者安装RAR软件,支持RAR压缩备份。 3.支持备份日志。可以了解哪些数据库没有备份成功。 4.支持保留多少次备份。也就是删除多少次...

    springmvc-mybatis 整合druid多数据源配置读写实现读写分离,windows上mysql主从复制

    本教程将详细讲解如何通过SpringMVC、MyBatis和Druid整合实现读写分离,以及在Windows环境下MySQL的主从复制配置。 首先,让我们了解SpringMVC、MyBatis和Druid的基本概念。SpringMVC是Spring框架的一部分,用于...

Global site tag (gtag.js) - Google Analytics