首先,自己购买一个ECS和RDS。而我购买的ECS没有设置安全组,我只是把3306端口打开,能让MySQL实现远程连接。
然后在线安装mysql:(其实这里可以使用mariadb代替,这里我只是想复习一下安装mysql)
[root@iZ7xv4kjrclm2kv72pwji0Z yum.repos.d]# wget -c https://repo.mysql.com//mysql80-community-release-el7-5.noarch.rpm
[root@iZ7xv4kjrclm2kv72pwji0Z yum.repos.d]# yum localinstall mysql80-community-release-el7-5.noarch.rpm
#禁用8.0:
[root@iZ7xv4kjrclm2kv72pwji0Z yum.repos.d]# yum-config-manager --disable mysql80-community
#启用5.7:
[root@iZ7xv4kjrclm2kv72pwji0Z yum.repos.d]# yum-config-manager --enable mysql57-community
[root@iZ7xv4kjrclm2kv72pwji0Z yum.repos.d]# yum install mysql mysql-server mysql-libs mysql-server[root@iZ7xv4kjrclm2kv72pwji0Z yum.repos.d]# yum install mysql-community-server
#验证:
[root@iZ7xv4kjrclm2kv72pwji0Z yum.repos.d]#yum repolist enabled | grep mysql
#启动数据库:
[root@iZ7xv4kjrclm2kv72pwji0Z yum.repos.d]#systemctl enable --now mysqld
[root@iZ7xv4kjrclm2kv72pwji0Z yum.repos.d]# mysql
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)
#这里登录不了,只能想办法绕过了
[root@iZ7xv4kjrclm2kv72pwji0Z yum.repos.d]# vim /etc/my.cnf
#关闭数据库, 修改主配置文件(/etc/my.cnf) 添加:
skip-grant-tables
#然后启动数据库, 空密码登录并修改密码
[root@iZ7xv4kjrclm2kv72pwji0Z yum.repos.d]# mysql
mysql> update mysql.user set authentication_string=password('123456') where user='root' and host='localhost';
ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.
mysql> flush privileges;
ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.
mysql>
[root@iZ7xv4kjrclm2kv72pwji0Z yum.repos.d]# vim /etc/my.cnf
#删除刚才那一行:
skip-grant-tables,
[root@iZ7xv4kjrclm2kv72pwji0Z yum.repos.d]# mysql -uroot -p123456
mysql> create database db2;
Query OK, 1 row affected (0.00 sec)
mysql> use db2
Database changed
mysql> create table t1 (id int);
Query OK, 0 rows affected (0.01 sec)
mysql> insert into t1 values(1),(2),(3)
-> ;
Query OK, 3 rows affected (0.01 sec)
Records: 3 Duplicates: 0 Warnings: 0
mysql> grant all on db2.* to admin@'%' identified by '123456';
Query OK, 0 rows affected, 1 warning (0.00 sec)
#创建一个账号,账号名为dtsmigration,密码为Dts123456,并允许从任意主机登录数据库
mysql> create user 'dtsmigration'@'%' identified by 'Dts123456';
Query OK, 0 rows affected (0.00 sec)
#加多下面两行
mysql> set global validate_password_policy=0; #设置为弱口令
mysql> set global validate_password_length=1; #密码最小长度为1
mysql> grant all on db2.* to 'dtsmigration'@'%' identified by 'Dts123456';
mysql> quit
[root@iZ7xv4kjrclm2kv72pwji0Z yum.repos.d]# vim /etc/my.cnf
#添加下面两行
log_bin=mysql_bin
server-id=2
然后,在ECS上面配置安全组,打开3306端口提供远程连接
记住,这里别忘了自己创建RDS的一个账号和一个数据库,并进行权限设置,最好绑定
然后,打开DTS,进行授权,然后打开数据迁移服务,创建任务
发现权限设置问题,就是白名单的问题,所以创建白名单
然后就能登录了
然后,后面是可以根据自己想要的定义就行了
创建完成后就可以启动了