1.首先设置mysql
1).mysql -u root -p 链接mysql
2).use mysql使用mysql这个库
3).GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION; 修改mysql远程访问权限,当然也可以新建账号赋予远程连接权限。
4).使用 flush privileges; 命令刷新刚才修改的权限,使其生效
5).使用 select host,user from user;查看是是否生效
2.如果第一步完了不行的话那么就需要查看防火墙是否允许几个关键的端口被访问。
root@iZ2:~# status verbose
如果出现 Status: inactive 说明防火墙是不活跃的也就是没有启动。
那么使用
root@iZ2~# sudo ufw enable开启防火墙,然后在查看:
root@iZ2:~# ufw status verbose
Status: active ----->已经变为活跃状态
Logging: on (low)
Default: deny (incoming), allow (outgoing)
New profiles: skip
To Action From
-- ------ ----
22 ALLOW IN Anywhere
3306 ALLOW IN Anywhere
80 ALLOW IN Anywhere
状态已经变为活跃状态。并且列出了当前不受限制的端口列表。
开启各禁用端口的命令如下:
sudo ufw allow smtp #允许所有的外部IP访问本机的25/tcp (smtp)端口
sudo ufw allow 22/tcp #允许所有的外部IP访问本机的22/tcp (ssh)端口
sudo ufw allow 53 #允许外部访问53端口(tcp/udp)
sudo ufw allow from 192.168.1.100 #允许此IP访问所有的本机端口
sudo ufw allow proto udp 192.168.0.1 port 53 to 192.168.0.2 port 53
sudo ufw deny smtp #禁止外部访问smtp服务
sudo ufw delete allow smtp #删除上面建立的某条规则
sudo ufw deny 8080 #禁止8080端口
至此 防火墙和端口的问题就解决了。
3.如果上面的步骤都没问题了,那么可能就是mysql的配置文件的问题了
在MySQL配置文件/etc/mysql/my.cnf中,找到bind-address = 127.0.0.1这一行,然后注释掉。
然后再去本地连接阿里云的mysql试试^-^,祝你成功!