Java基础、中级、高级、架构面试资料

华为云数据库 RDS 测试心得体会!

SQL herman 4238浏览
公告:“业余草”微信公众号提供免费CSDN下载服务(只下Java资源),关注业余草微信公众号,添加作者微信:xttblog2,发送下载链接帮助你免费下载!
本博客日IP超过2000,PV 3000 左右,急需赞助商。
极客时间所有课程通过我的二维码购买后返现24元微信红包,请加博主新的微信号:xttblog2,之前的微信号好友位已满,备注:返现
受密码保护的文章请关注“业余草”公众号,回复关键字“0”获得密码
所有面试题(java、前端、数据库、springboot等)一网打尽,请关注文末小程序
视频教程免费领
腾讯云】1核2G5M轻量应用服务器50元首年,高性价比,助您轻松上云

最近我有幸参与了华为云数据库限时有奖评测!本文说一下我个人对华为云数据库的使用感受!

首先呢?我是在 CSDN 上看到了一个关于华为云数据库限时有奖评测的活动,奖品还不错,于是就抱着试试的心态参加一下!

然后我就按照要求报名了。第二天就审核通过了,并且华为云给我发了一张 500 元的优惠券。我就按要求购买了华为云数据库的产品。

华为云数据库RDS控制台

注意上面我标红的框框。我购买的是上海二区的数据库产品,买完以后,我就到这个页面刷新了半天,没有一个实例。然后我前前后后找了半天的原因,才发现这里可以选择,选择区域在这里。这个地方体验不太好,放的位置太高了,如果是第一次使用很容易忽略!

注意上面的那个登录功能,只能从页面上进行登录。而且只有一个内网地址。如果你想进行远程访问,还需要一些配置。这些配置在哪里呢?我前前后后也是找了很久,才发现,需要点击实例名称的这个超链接才可以看到,和我想象的有点不太一样!

华为云数据库RDS实例信息

远程连接需要开启上面的那个开关。提示:“远程连接免费提供1Mbit/s带宽的EIP服务,若不满足,可至弹性公网IP页面进行EIP的购买和绑定。”

开启这个远程连接的时间需要很久,实际上可能很快,就是这个页面刷新可能有点问题。我自己手动刷新一下页面马上就好了!

另外光开启上面的那个开关还不行,还需要配置一个远程连接白名单。如果不配置,默认是只允许 127.0.0.1 访问。

做完这些之后,我的 Navicat 就可以连接上了。

我买的数据库是 MySQL 5.7 的版本。我新建了一个 test 数据库,然后新建了一个 xttblog 数据库。测试了一下插入性能:

DROP PROCEDURE IF EXISTS proc_initData;

DELIMITER $
CREATE PROCEDURE proc_initData()
BEGIN
    DECLARE i INT DEFAULT 1;
    WHILE i<=10000 DO
        INSERT INTO xttblog(id,name) VALUES(i,'xttblog');
        SET i = i+1;
    END WHILE;
END $

CALL proc_initData();

插入 1 万条数据,大概 35 秒左右!

删除一万条数据用时:Affected rows : 10000, Time: 0.05sec。

数据库规格方面:性能规格c3.large.2 | 1 核 | 4 GB。建议最大连接数1500,存储空间类型超高 IO,主备模型,数据库版本:5.7.23-1-log。

上面这些数据都需要进行多次测试,每次测试的结果可能都不太一样。

后面我又测试了一下其他的一些常用函数:

select ABS(-32);  -- 0.01 秒
select MOD(15,7); -- 0.01 秒
select 15 % 7;  -- 0.01 秒
select FLOOR(1.23); -- 0.01 秒
select FLOOR(-1.23);  -- 0.01 秒
select CEILING(1.23); -- 0.02 秒
select CEILING(-1.23); -- 0.01 秒
select ROUND(1.58); -- 0.01 秒
select ROUND(-1.58);  -- 0.02 秒

select ASCII('2');  -- 0.01 秒
select ASCII(2);  -- 0.01 秒
select ASCII('dx')  -- 0.01 秒

select CONCAT('My', 'S', 'QL');  -- 0.02 秒
select CONCAT('My', NULL, 'QL'); -- 0.01 秒
select CONCAT(14.3); -- 0.01 秒

select LENGTH('text'); -- 0.01 秒

select LOCATE('bar', 'foobarbar'); -- 0.01 秒
select LOCATE('xbar', 'foobar'); -- 0.01 秒

select INSTR('foobarbar', 'bar'); -- 0.01 秒
select INSTR('xbar', 'foobar'); -- 0.01 秒

select LEFT('foobarbar', 5); -- 0.02 秒

select RIGHT('foobarbar', 4); -- 0.01 秒
select SUBSTRING('Quadratically',5); -- 0.01 秒
select TRIM(' bar ');    -- 0.01 秒
select LTRIM(' barbar');  -- 0.01 秒
select RTRIM('barbar ');  -- 0.01 秒
select REPLACE('www.mysql.com', 'w', 'Ww');  -- 0.01 秒
select REPEAT('MySQL', 3);  -- 0.01 秒
select REVERSE('abc'); -- 0.01 秒
select INSERT('whatareyou', 5, 3, 'is');  -- 0.01 秒
select WEEKDAY('2018-11-05');  -- 0.01 秒
select DAYOFMONTH('2018-02-03');  -- 0.01 秒

select DAYOFYEAR('2018-02-03');  -- 0.01 秒
select MONTH('2018-02-03');  -- 0.01 秒
select DAYNAME("2018-02-05");  -- 0.01 秒
select MONTHNAME("1998-02-05");  -- 0.01 秒
select QUARTER('98-04-01');  -- 0.01 秒
select WEEK('2009-02-20');  -- 0.01 秒
select WEEK('2009-02-20',0);  -- 0.01 秒
select WEEK('2009-02-20',1);  -- 0.01 秒
select YEAR('98-02-03');  -- 0.01 秒
select HOUR('10:05:03');  -- 0.01 秒
select MINUTE('98-02-03 10:05:03');  -- 0.01 秒
select SECOND('10:05:03');  -- 0.01 秒
SELECT "1997-12-31 23:59:59" + INTERVAL 1 SECOND;  -- 0.01 秒
SELECT INTERVAL 1 DAY + "1997-12-31";  -- 0.02 秒
SELECT "1998-01-01" - INTERVAL 1 SECOND;  -- 0.01 秒
SELECT DATE_ADD("1997-12-31 23:59:59", INTERVAL 1 SECOND);  -- 0.01 秒
SELECT DATE_ADD("1997-12-31 23:59:59", INTERVAL "1:1" MINUTE_SECOND);  -- 0.01 秒
SELECT DATE_SUB("1998-01-01 00:00:00", INTERVAL "1 1:1:1" DAY_SECOND);  -- 0.01 秒
SELECT DATE_SUB("1998-01-02", INTERVAL 31 DAY);  -- 0.01 秒
select CURDATE();  -- 0.01 秒
select CURTIME();  -- 0.01 秒
select NOW();  -- 0.01 秒
SELECT IF(1>2,2,3); -- 0.01 秒
SELECT IF(1<2,'yes ','no'); -- 0.01 秒
SELECT IF(STRCMP('test','test1'),'no','yes'); -- 0.01 秒
SELECT CASE 11 WHEN 1 THEN 'one' WHEN 2 THEN 'two' ELSE 'more' END; -- 0.01 秒
SELECT CASE WHEN 1>0 THEN 'true' ELSE 'false' END; -- 0.01 秒

这里我只统计了第一次执行的花费时间。因为执行多次的平均记录都是 0.01 秒。

由于我买的是主备 MySQL 数据库,所以又执行了一下 show master status; 和 show slave status; 发现主备是正常的。

show master status;
show slave status; 

根据华为云数据库产品信息显示,我的 RDS 的数据同步方式是半同步,可以修改为异步的方式。

另外在实例类型上还可以切换为只读,或者主备切换。切换这个需要花费时间的,由于我的数据少,而且没有实时的写入数据,切换还是比较快!

华为云数据库产品主备切换策略方面,可靠性优先和可用性优先两种策略!

关于华为云数据库产品的测试暂时就到这里!谢谢大家!

业余草公众号

最后,欢迎关注我的个人微信公众号:业余草(yyucao)!可加作者微信号:xttblog2。备注:“1”,添加博主微信拉你进微信群。备注错误不会同意好友申请。再次感谢您的关注!后续有精彩内容会第一时间发给您!原创文章投稿请发送至532009913@qq.com邮箱。商务合作也可添加作者微信进行联系!

本文原文出处:业余草: » 华为云数据库 RDS 测试心得体会!