
cat /proc/version

lsb_release -a

mysql -V

java -version

言归正传
skip-grant-tablesvi /etc/my.cnf

重启mysql。service mysqld restart

登录mysql。mysql -uroot -p(此时不需要密码回车即可登录)

进入mysql数据库 use mysql ,见上图。
update mysql.user set authentication_string=password('aAbB&*321') where user='root';aAbB&*321为要设置的密码,如果显示下图说明成功了。

skip-grant-tables进入my.cnf文件,删除 skip-grant-tables,然后重启mysql就可以登陆了
重启:service mysqld restart 或 /usr/sbin/mysqld restart
进入mysql: mysql -uroot -p
输入刚才设置的密码就可以了。
a,进入数据库:mysql -u root -p b,切换到 mysql库:use mysql; c,查看用户表,看到当前host是localhost,只允许本地访问。
MySQL [mysql]> select host,user from user;
+-----------+---------------+
| host | user |
+-----------+---------------+
| 127.0.0.1 | root |
| localhost | mysql.session |
| localhost | mysql.sys |
| localhost | root |
+-----------+---------------+
4 rows in set (0.00 sec)d,更新user用户表:
mysql> update user set `host` = '%' where `user` = 'root' LIMIT 1;e,强制刷新权限:mysql> flush privileges;
f,再次查看用户表,root用户的host变成%,即允许所有的ip远程访问,如果需要指定具体的ip,就写上具体的ip即可。
MySQL [mysql]> select host,user from user;
+-----------+---------------+
| host | user |
+-----------+---------------+
| % | root |
| 127.0.0.1 | root |
| localhost | mysql.session |
| localhost | mysql.sys |
+-----------+---------------+
4 rows in set (0.00 sec)查看端口监听状态
[root@VM_0_6_centos ~]# netstat -an|grep 3306
tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN 这里可以看到 0 0.0.0.0:3306 表示所有IP均可访问。
如果显示为 127.0.0.1:3306 说明只允许本地访问,需要修改配置文件。
[root@VM_0_6_centos ~]# netstat -an|grep 3306
tcp 0 0 127.0.0.1:3306 0.0.0.0:* LISTEN 修改my.cnf,注释掉bind-address 127.0.0.1属性。
重启mysql服务service mysql restart,再次使用命令netstat -an|grep 3306查看端口监听状态:
[root@VM_0_6_centos ~]# netstat -an|grep 3306
tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN 进入腾讯云控制台,依次安全->安全组->入站规则->添加规则->编辑,将3389改为3306即可。(3389为远程协助端口,一般用不着)

Ok,腾讯云服务器的MYSQL数据库远程访问开启成功,使用客户端测试连接成功。
