穷人,因为公司要增加只读数据库,所以自己先充钱实践一下。
阿里云的RDS数据库就支持创建只读实例,操作很简单,只要在原主实例中添加只读实例就可以了。但是我们要满足以下条件:
image.png
然后很巧的是,我们公司原数据库刚好不符合,所以要升级,但是升级要好多钱,所以为了万无一失,我自己先买个数据库实践一下。
1、创建主实例
登录RDS管理模块,选择创建实例。
image.png
因为是自己测试只读实例用,所以选择的按量付费,除了框中选择的以外,其余都是怎么便宜怎么来。一定要选择高可用版,否则无法创建只读实例。
image.png
只读实例创建完成。创建数据库账户、白名单后,用navicat连接创建好的实例(外网连接),新建数据库并且随便加一些数据,一会儿要看同步效果。
image.png
2、创建只读实例
点击主实例ID进入,添加只读实例。
image.png
添加只读实例的时候,需要注意可用区,在只读实例的简介中,只读实例和主实例要在同一区域,可以在不同可用区。只读实例最多只能创建10个。阿里云官方文档: https://help.aliyun.com/document_detail/26136.html?spm=a2c4g.11186623.6.599.5eaf570bUlgtbx
3、只读实例创建完成
image.png
可以看到新创建的只读实例这里显示的R与其它实例做区分。
只读实例中数据库账号和白名单都已经从主实例一起过来了,用navicat连接只读实例,可以看到数据已经同步:
image.png
修改主实例,只读实例中的数据也更新。但是需要注意的是,只读实例的数据更新是异步的,也就意味着会有延迟,这个延迟会受网络等各种因素的影响。
虽然阿里云能够让我们很简单的就去实现只读实例的创建,但是在这之前还是需要去看一看MySQL Replication相关知识,了解到数据库主从复制的原理。