zoukankan      html  css  js  c++  java
  • Mysql 数据库热备份

    主从模式:

    主服务器server1:   192.168.1.20     Mysql 5.0   需要备份的数据库 mydb

    从服务器server2:   192.168.1.22     Mysql 6.0  



    1.备份现有数据:

    最好先停止mysql service

    使用[MysqlHome]:\bin\mysqldumple.exe工具 将现有数据备份成一个sql文件:

    d:\>cd [MysqlHome]

    [MysqlHome]>cd bin

    bin:\>mysqldumple  -u root -p mydb> d:\mydb.sql     //有自己写的存储过程或函数时加上--routines 选项,否则默认不备份。另:在语句后面加';' 会导致db not found 报错。

    回车输入root用户的密码后数据库就会被导出到d:\mydb.sql 中

    将mydb.sql COPY到server2 的D:\ 下

    在mysql 下运行如下命令:

    mysql> source mydb.sql

    运行完成后数据就会被导入到server2的mysql 中


    2.授权:

    server1上:

    mysql>grant replication slave on *.* to user@'192.168.1.22' identified by 'pass'  注:6.0  中的用户要加引号 'user'@''192.168.1.22'

    授权server2 使用用户名user 密码pass 连接到server1进行数据备份


    3.server1配置修改:

    数据库的备份是基于日志复制机制。

    server-id=1  //设置主服务器的编号

    log-bin =[log-name]  //设置日志文件

    binlog-do-db=[db-name]    //记录日志的数据库

    binlog-ignore-db=[db1,db2]   //不记录日志的数据库

    配置修改完成后重新启动service


    4.server2中的配置:

    修改my.ini配置文件

    在[mysqld] 后面添加如下两行

    server-id=2

    replicate-do-db = mydb


    在mysql  client中运行如下命令:

    mysql> change master to master_host='192.168.1.20',master_user='user',master_password='pass',master_log_file='[log-name]',master_log_pos=[pos-val];

    [log-name] 和[pos-val] 可以在server1中使用 show master status查看。

     重启service



  • 相关阅读:
    zoj 3627#模拟#枚举
    Codeforces 432D Prefixes and Suffixes kmp
    hdu 4778 Gems Fight! 状压dp
    CodeForces 379D 暴力 枚举
    HDU 4022 stl multiset
    手动转一下田神的2048
    【ZOJ】3785 What day is that day? ——KMP 暴力打表找规律
    poj 3254 状压dp
    C++中运算符的优先级
    内存中的数据对齐
  • 原文地址:https://www.cnblogs.com/yjl49/p/2371956.html
Copyright © 2011-2022 走看看