数据管理服务(data admin service,简称das)是一款专业的简化数据库管理工具,提供优质的可视化操作界面,大幅提高工作效率,让数据管理变得既安全又简单。您可以通过数据管理服务连接并管理实例。云数据库rds服务默认为您开通了远程主机登录权限,推荐您使用更安全便捷的数据管理服务连接实例。
本章节介绍从购买到通过数据管理服务(data admin service,简称das)连接rds for mysql实例的操作步骤。
准备工作
- 注册华为账号并开通华为云。
- 完成实名认证。
- 购买实例前需要确保账户有足够金额,请参见账户充值。
- 如果需要对华为云上的资源进行精细管理,请使用统一身份认证服务(identity and access management,简称iam)创建iam用户及用户组,并授权,以使得iam用户获得具体的操作权限,更多操作,请参见创建用户组、用户并授予rds权限。
操作步骤
步骤1:购买rds for mysql实例
- 进入。
- 在“快速购买”页面,配置实例基础参数。
图1 基础配置
表1 基础配置
|
参数 |
示例 |
参数说明 |
|
计费模式 |
按需计费 |
实例的计费模式。
- 包年/包月:一种预付费模式,即先付费再使用,按照订单的购买周期进行结算。购买周期越长,享受的折扣越大。一般适用于需求量长期稳定的成熟业务。
- 按需计费:一种后付费模式,即先使用再付费,按照云数据库rds实际使用时长计费,秒级计费,按小时结算。按需计费模式允许您根据实际业务需求灵活地调整资源使用,无需提前预置资源,从而降低预置过多或不足的风险。
|
|
区域 |
华北-北京四 |
资源所在的区域。
不同区域内的产品内网不互通,且创建后不能更换,请谨慎选择。 |
|
引擎版本 |
8.0 |
数据库版本。 |
|
实例类型 |
主备 |
实例的架构类型。
主备:采用一主一备的经典高可用架构,主备实例的每个节点的规格保持一致。备机提高了实例的可靠性,创建主机的过程中,会同步创建备机,备机创建成功后,用户不可见。 |
|
性能规格 |
通用型 2u4gb |
实例的cpu和内存规格。 |
|
磁盘存储 |
ssd云盘 100gb |
实例的存储空间。
您申请的存储空间会有必要的文件系统开销,这些开销包括索引节点和保留块,以及数据库运行必需的空间。 |
|
磁盘加密 |
不加密 |
选择加密后会提高数据安全性,但对数据库读写性能有5%的性能影响,请按照您的使用策略进行选择。
如果使用共享kms密钥,对应的cts事件为createdatakey和decrydatakey,仅密钥所有者能够感知到该事件。 |
- 实例更多配置。
图2 更多配置
表2 更多配置
|
参数 |
示例 |
参数说明 |
|
虚拟私有云 |
default_vpc |
实例所在的虚拟网络环境,可以对不同业务进行网络隔离。
如果没有可选的虚拟私有云,单击“创建虚拟私有云”,完成创建后单击 。具体操作请参见创建虚拟私有云和子网。 |
|
子网 |
default_subnet |
通过子网提供与其他网络隔离的、可以独享的网络资源,以提高网络安全性。 |
|
安全组 |
default |
安全组限制实例的安全访问规则,加强rds for mysql与其他服务间的安全访问。 |
|
企业项目 |
default |
对于已成功关联企业项目的用户,仅需在“企业项目”下拉框中选择目标项目。
更多关于企业项目的信息,请参见《企业管理用户指南》。 |
|
表名大小写 |
不区分大小写 |
表名是否区分大小写。目标实例与原实例表名大小写设置不一致,可能会导致恢复失败。
已创建完成的rds for mysql 8.0实例不支持设置表名大小写敏感。 |
|
购买数量 |
1 |
批量创建实例的个数。 |
- 配置完成后,单击“立即购买”。
- 查看购买成功的rds for mysql实例。
图3 购买成功
常见问题
在实例列表的操作列单击“登录”时,无法跳转至das页面怎么办?
权限不足导致实例连接失败怎么办?
- 报错信息:您的权限不足。策略不允许执行 das:connections:xxx。
报错原因:您的账号没有添加das fullaccess权限。
解决方法:请参考创建用户并授权使用das,添加das fullaccess权限。
- 报错信息:您没有执行此操作的权限,请联系您的管理员为您开通权限。
报错原因:您的账号没有添加das fullaccess权限。
解决方法:请参考创建用户并授权使用das,添加das fullaccess权限。
- 报错信息:您当前登录的账号仅具有只读权限,不能执行此操作。为确保您顺利使用das,请添加das administrator权限。
报错原因:您的账号没有添加das fullaccess权限。
解决方法:请参考创建用户并授权使用das,添加das fullaccess权限。
通过das连接实例失败怎么办?
- 报错信息:access denied for user 'user_name'@'100.xxx.xx.xx' (using password: yes)。
- 报错原因:rds实例用户名或密码不对。
解决方法:请确认数据库用户名和密码是否正确,如果您不确认密码是否正确,可以在rds控制台重置实例密码。
如果确认账户名和密码正确,可以通过客户端或命令行工具登录数据库,执行select * from mysql.user where user = 'user_name'命令查看用户信息,如果存在100.%网段的用户,则das只能通过100.%网段的数据库用户去连接数据库。user_name @%与user_name @100.%是两个用户,其密码和权限都是独立的,请确认输入的密码是否是user_name @100.%用户的密码。
- 报错原因:das服务器的ip地址不在您输入用户的白名单中。
解决方法:使用客户端或命令行工具登录到数据库,创建das可以访问的数据库用户。
create user 'user_name'@'100.%' identified by 'password';
grant select on *.* to 'user_name'@'100.%';
- das服务器ip地址所在网段为100.%,请根据实际使用需要添加白名单。
- 请根据实际使用需要给user_name@100.%用户赋予权限。
- 报错原因: 使用ssl用户登录,服务端没有开启ssl功能。
解决方法:请执行如下语句查询用户是否是ssl用户,如果是,则在rds实例详情页面,将ssl开关打开。其中,ssl_type字段有值即表示此用户是ssl用户。
select user, host, ssl_type from mysql.user where user = 'user_name';
- 报错信息: trying to connect with ssl, but ssl not enabled in the server.
报错原因: 使用ssl用户登录,服务端没有开启ssl功能。
解决方法:请执行如下语句查询用户是否是ssl用户,如果是,则在rds实例详情页面,将ssl开关打开。其中,ssl_type字段有值即表示此用户是ssl用户。
select user, host, ssl_type from mysql.user where user = 'user_name';
- 报错信息: client does not support authentication protocol requested by server. plugin type was = 'sha256_password'.
- 报错原因: das暂不支持密码的加密方式为sha256_password的数据库用户连接登录。
解决方法:请执行如下语句将密码的加密方式改为mysql_native_password。
alter user 'user_name'@'%' identified with mysql_native_password by 'password';
- 报错原因:对于mysql 8.0,das服务器的ip地址不在您输入用户的白名单中。
解决方法:使用客户端或命令行工具登录到数据库,创建das可以访问的数据库用户。
- 报错信息: communications link failure the last packet sent successfully to the server was 0 milliseconds ago. the driver has not received any packets from the server.
报错原因: das服务器与实例网络不通。
解决方法:请联系客服人员协助处理。
- 报错信息:instance connect timeout, please login again.
报错原因:das服务器连接超时。
解决方法:请联系客服人员协助处理。
- 报错信息:rsa public key is not available client side (option serverrsapublickeyfile not set).
报错原因:数据库用户的身份认证方式对密码安全性要求较高,要求用户认证过程中在网络传输的密码是加密的。
- 如果是ssl加密连接,则使用ssl证书和密钥对来完成“对称加密密钥对(在tsl握手中生成)”的交换,后续使用“对称加密密钥对”加密密码和数据。
- 如果是非ssl加密连接,则在连接建立时客户端使用mysql server端的rsa公钥加密用户密码,server端使用rsa私钥解密验证密码的正确性,可以防止密码在网络传输时被窥探。
解决方法:开启实例ssl或者修改数据库用户的身份认证方式。
后续操作
登录实例后,您可以创建数据库,进行数据迁移等操作,具体请参见: