什么是RDS高可用

目前睿江云已经推出的RDS数据库,也已经将以上提到的高可用,进行了融合。用户无需进行上面的配置,直接选购即可使用。

简单说说RDS的主从功能是如何实现_RDS

 

相信不少的读者朋友,数据库的使用经验,相信使用的最多得应该是MYsql这个数据库软件了。如果一台系统能够不间断的提供服务,那么这台系统的可用性据说100%。那如果系统每运行100个时间单位,就会出现1个时间单位无法提供服务,那么该台系统的可用性是99%。数据库除了定期备份还需要实现冷热备份。甚至可以在全球范围内部署灾备数据中心。

 

常见的RDS高可用思路

主主模型,双方互为主备。可以负载均衡读请求,但是无法负载写请求,因为每份数据都会在两台主机中写入。

主备模型。写入服务器作为主服务器,读数据服务器作为从服务器,从服务器可以有多台,因此都可以做到读负载均,引入了memcache的机制也是可以的。

主主模型和主备模型,都是可以实现读负载均衡,但是无法实现写负载均衡。

 

最简单的主备模型是如何实现的

下面是关于一个数据库主从复制的大体模型

简单说说RDS的主从功能是如何实现_RDS_02

 

1、主节点上的操作:

//启动二进制日志,为master设定全局唯一的ID号
[mysqld]
Log_bin=mysql-bin
Server_id=1

//创建具有复制权限的用户账户
GRANT REPLICATION SLAVE,REPLICATION CLIENT ON *.* TO 'repluser'@'121.201.%.%' IDENTIFIED BY 'replpass';
FLUSH PRIVILEGES;

//重启mysql之后,查看master的状态,记录二进制文件跟位置
mysql> show master status;
+------------------+----------+--------------+------------------+-------------------+
| File             | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+------------------+----------+--------------+------------------+-------------------+
| mysql-bin.000001 |      154 |              |                  |                   |
+------------------+----------+--------------+------------------+-------------------+

提示:如果是ubuntun系统的话,默认是不允许数据库远程访问的,因此可以修改监听的地址bind_address = 0.0.0.0




2、从节点上的操作
//启动中继日志,为slave节点设定全局唯一的ID号
[mysqld]
Relay_log=relay-log
Server_id=2

//重启mysql


//登录指定复制权限权限指向master服务器,并启动复制进程
CHANGE MASTER TO MASTER_HOST='121.201.55.49', MASTER_USER='repluser',MASTER_PASSWORD='replpass',MASTER_LOG_FILE='master-bin.000001',MASTER_LOG_POS=154;

//或者使用较为直观的方式查看
mysql> CHANGE MASTER TO MASTER_HOST='121.201.55.49',
    -> MASTER_USER='repluser',
    -> MASTER_PASSWORD='replpass',
    -> MASTER_LOG_FILE='mysql-bin.000001',
    -> MASTER_LOG_POS=0;


//启动复制线程
Start slave;//默认启动2个线程
START SLAVE IO_THREAD;
START SLAVE SQL_THREAD;

//查看线程是否启动正常
mysql> SHOW SLAVE STATUS\G

 

如果看到以上的两个进程都是running的,那么则表示做基本的主从已经实现了。各家的云厂商的高可用策略设计都有所不同,但如果是简单级别的高可用方案,也会采用主从同步的方式。

本篇简单的分享了一个简单的主从同步配置案例,感兴趣的朋友们可以按照以上的步骤进行尝试,笔者在centos7系列的环境中搭建过多次,都是成功的。另外目前睿江云已经推出的RDS数据库,也已经将以上提到的高可用,进行了融合。用户无需进行上面的配置,直接选购即可使用。

以上都是笔者在实际过程中用到的一些解决方案,只有适合业务本身的方案才是好方案。许多时候并不一定追寻最新的前沿技术,只有在充分了解自身业务的本质需求的前提下,才能挑选出最适合的解决方案,其次在稳定性的基础下适当向功能性方面拓展。另外本系列也会后续跟读者朋友分享其他的常见的容器应用的搭建,敬请关注。