• 在阿里云ECS上自建RDS(MYSQL)的从库


    废话不多说,直接开搞。

    1、新购ECS及安装mysql 略过。

    按照之前新增从库的套路在导出数据库时尽然卡住了

    导出命令

    mysqldump -hrm-2zeu9.mysql.rds.aliyuncs.com -urepl -p -P3306 -Q -B -R -v --opt --single-transaction --master-data=1 --add-drop-database --databases test_db  2> 3306-from-rds.log > 3306-from-rds.sql
    或
    mysqldump -hrm-2zeu9.mysql.rds.aliyuncs.com -urepl -p -P3306 -Q -B -R -v --opt --single-transaction --master-data=1 --add-drop-database --databases test_db  2> 3306-from-rds.log |gzip> 3306-from-rds.sql.gz 
    

     查看日志,报错信息如下

    mysqldump: Couldn't execute 'FLUSH /*!40101 LOCAL */ TABLES': Access denied; you need (at least one of) the RELOAD privilege(s) for this operation (1227)
    

     没有权限?? 

    原来是 --master-data=1 导致的,但是必须是1才行。那就在rds新增 “高权限账号”,过程略过。

    再次导出,正常。

    后面,按照新增从库的操作即可。

    其实,阿里云不建议自建rds的从库,具体:

    https://developer.aliyun.com/ask/230807?spm=a2c6h.17698244.wenda.7.2c1f1407Xecj58

     当然,如果业务方面,当出现阿里云rds出现切换时,允许主从延迟、或者主从重建的话,也是可以的。

    根据自己业务需要进行即可。

    注意: 以下为增加rds从库时的新增内容

    在导入数据完成,执行change master后。开启slave同步会报错。提示 找不到index.log

    解决方式

    stop slave;
    reset master;
    change master to master_host='rm-2.mysql.rds.aliyuncs.com',MASTER_PORT=3306,master_user='slave',master_password='123456',master_auto_position=1;
    start slave;
    show slave statusG;
    
    当使用master_auto_position时,MASTER_LOG_FILE, MASTER_LOG_POS不能使用。
    

      

     

  • 相关阅读:
    ASP.NET AJAX__序言
    LINQ to SQL(4):OR设计器
    ASP.NET AJAX(11)__ScriptManager
    ASP.NET AJAX(15)__构建高性能ASP.NET AJAX应用
    LINQ to SQL(2):生成对象模型
    LINQ to SQL(3):增删改查
    ASP.NET AJAX(14)__UpdatePanel与服务器端脚本控件
    ASP.NET AJAX(13)__利用Microsoft AJAX Library开发客户端组件
    LINQ to SQL(1):基础入门
    ASP.NET AJAX(12)__浏览器兼容功能
  • 原文地址:https://www.cnblogs.com/xzlive/p/13994061.html
Copyright © 2020-2023  润新知