• mysql 容灾备份


    跨服务器备份:

    服务器A:192.168.5.193
    测试数据库TestDB
    服务器B:192.168.5.194
    目标:将服务器A上的测试数据库定时备份到服务器B中

    需要技术:mysqldump + crontab

    步骤:
    1.修改mysql远程连接访问权限
    修改mysql的配置文件/mysql/my.conf,将bind-address后面增加远程访问IP地址或者禁掉这句话就可以让远程机登陆访问了。

    2.增加服务器授权用户
    在服务器A上:

    CREATE USER 'username'@'host' IDENTIFIED BY 'password';
    

    说明:

    1. username:你将创建的用户名
    2. host:指定该用户在哪个主机上可以登陆,如果是本地用户可用localhost,如果想让该用户可以从任意远程主机登陆,可以使用通配符%
    3. password:该用户的登陆密码,密码可以为空,如果为空则该用户可以不需要密码登陆服务器
    GRANT privileges ON databasename.tablename TO 'username'@'host'
    

    说明:

    1. privileges:用户的操作权限,如SELECT,INSERT,UPDATE等,如果要授予所的权限则使用ALL
    2. databasename:数据库名
    3. tablename:表名,如果要授予该用户对所有数据库和表的相应操作权限则可用表示,如.*

    本测试实例mysql语句为:

    CREATE USER 'why'@'192.168.5.194' IDENTIFIED BY '123456';
    GRANT privileges ON *.* TO 'why'@'192.168.5.194';
    flush privileges;    /*刷新一下权限*/
    

    这样就建立了如下的用户权限表,在服务器端查看一下,命令为:

    select user,host from mysql.user;
    

    3.在服务器B上编写如下脚本

    #!/bin/bash
    my_user=why                                            #服务器B的用户(必须是已经授权的)
    my_pass=123456                                      #服务器A的用户密码
    my_host=192.168.5.193                            #要连接的服务器A
    my_db1=TestDB                                        #想要导出的服务器A的数据库(需要授权)
    mm_dir=/home/fabric/backup/t2.sql           #导出的地址
    mysqldump_cmd=/usr/bin/mysqldump       #mysqldump的可运行指令地址
    
    local_usr=root                                            #本地数据库的用户名
    local_pass=000000                                    #本地数据库的密码
    mysql_cmd=/usr/bin/mysql                        #mysql的可运行指令地址
    
    $mysqldump_cmd -h $my_host -u $my_user -p$my_pass $my_db1 > $mm_dir
    $mysql_cmd -u $local_usr -p$local_pass $my_db1 < $mm_dir
    

    在命令行下进行测试,看看是否能够备份。
    查看服务器A上的数据,这里的图形化工具是mysql workbench(使用起来还不错)


    运行如上脚本后,查看服务器B的数据。


    /可以看到这里备份成功了/

    1. 使用crontab进行定时备份
      crontab -e后
    1 * * * * ~/backupDatabases.sh
    

    以上命令使得,每小时的第一分钟,对数据库进行备份,当然也可以随意修改一些时间。

  • 相关阅读:
    Modelsim仿真笔记
    RTP协议
    SHFileOperation使用
    浅谈基于IP网络的H.264关键技术及应用
    jrtplib在windows下的编译步骤
    DEBUG AND RELEASE
    CTree 使用详解 转:
    VC中给树形控件的图标加上工具提示
    MFC六大关键技术之(二)——运行时类型识别(RTTI)
    Linux下编译jrtplib和jthread:
  • 原文地址:https://www.cnblogs.com/whyaza/p/11118768.html
Copyright © 2020-2023  润新知