828 华为云征文|Flexus X 实例搭配华为云 EulerOS,快速部署 MySQL 并执行读写性能测试
前言
本篇博文将继续对华为云 Flexus 云服务器 X 实例进行 MySQL 相关的实例测评
查看镜像信息
本地连接服务器之后输入指令 lsb_release -a 查看镜像信息
从镜像信息中我们可以看到我们使用的镜像是 Huawei Cloud EulerOS
什么是 Huawei Cloud EulerOS?
Huawei Cloud EulerOS(简称 HCE OS),是基于华为开源社区 openEuler 构建的 linux 操作系统,提供云原生、高性能、安全稳定的执行环境来开发和运行应用程序,助力企业客户快速上云及开发者创新
MySQL 安装与启动
原计划是通过指令安装一个 MySql 的 但是当我输入指令
dnf install mysql5-server mysql5-common mysql5
显示如下内容
看到这里不得不改变原有计划采用 yum install mysql 来进行尝试,效果如下
看上去还是不错的。
接下来我们将会在华为云 Flexus 云服务器 X 实例下进行 MySQL 的一系列操作啦。
启动 MySQL
通过指令 systemctl start mysqld 来启动 MySQL
当 MySQL 启动成功后通过指令 systemctl status mysqld 来查看状态
连接 MySQL
通过 mysql -u root -p 连接数据库
由于没有设置密码所以直接显示连接成功,接下来我们设置以下密码
配置 MySQL
相关指令如下
# 使用 mysql 库 use mysql;# 修改 root 的密码为 rootALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'root';# 刷新权限 flush privileges;# 退出 exit;
此时我们再次输入指令 mysql -u root -p 连接数据库的指令会出现输入密码的提示,我们此时输入 root 即可
外网访问 MySQL
第一步我们查看一下服务器的安全组设置是否开启了 3306 端口, 通过查看安全组发现该端口并没有配置, 因此我们手动配置一下
通过 Navicat 连接数据库
此时显示的是连接失败,因为我们需要一些其他设置才可以进行连接(很重要哦!也很容易忽略的地方)
操作命令
修改 host 的值为 % , 具体指令如下
# 切换数据库 use mysql;# 修改 host 的值为 %update user set host='%' where user='root' and host='localhost';# 刷新权限 flush privileges;# 退出数据库 exit;
此时我们再次进行连接测试,显示如下图所示,ok 到目前为止基本上已经配置完成喽
数据库读写速度测试
到目前为止我们前期工作已经准备完成了,接下来我们进行读写测试来进一步体验华为云 Flexus 云服务器 X 实例
1. 创建测试数据库
2. 通过 SQL 语句创建测试表
首先我在 git 上搜集了 7767 条数据 , 我们接下来的目的就是通过 py 将这些数据写入到数据库中, 查看用时,以及进行读取时查看用时
数据集如下
字段说明:
创建测试表的 sql 语句如下:
CREATE TABLE `test_table` ( `id` int NOT NULL AUTO_INCREMENT, `label` int NOT NULL, `review` TEXT NOT NULL, PRIMARY KEY (`id`)) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
创建的数据表如下
Python 写入测试
将 csv 中的数据写入到数据库用时如下:
当然我这里采用了优化的写法,先将 CSV 文件中的所有行读取到内存中,然后使用 executemany() 方法批量执行 INSERT 语句。这可以大大提高插入速度,尤其是当处理大量数据时。
查看数据库中写入的数据
Python 读取测试
测试代码如下:
结果如下图所示:
总结
在创建 MySQL 镜像时,我们特别选择了华为云 Flexus X 实例,以实现性能加速。在测试阶段,通过对比写入和读取数据的时间,我们发现该实例的性能表现突出,显著优于其他同类产品。华为云 Flexus X 实例的 MySQL 加速功能确实名副其实,值得推荐。
评论