腾讯云 ubuntuservermysql安装和外网訪问
1 腾讯云 购买ubuntu 默认账户是ubuntu(因为winscp 使用ubuntu没有权限写文件)
因为腾讯云主机ubuntu系统默认username为ubuntu,不喜欢每次做什么都要sudo一下。故设置开启同意root用户登录
方法例如以下:
1.改动rootpassword
sudo passwd root
输入password(一般和ubuntupassword一样,方便记忆)2.改动ssh配置
sudo vi /etc/ssh/sshd_config
找到 PermitRootLogin 这项 将其改为 yes
保存退出并重新启动ssh服务既可。
sudo service ssh restart
2开放mysql 訪问
通过sudo apt-get install mysql-server安装了了mysql,这里不做安全考虑。我直接给权限了。
1.连接进入;
#mysql -u root -proot(这里password在mysql安装过程中提示有设置)
2.我这里直接给root的外部訪问权限了。
grant all privileges on *.* toroot@"%" identified by "password" with grant option;
flush privileges;
赋予root用户针对数据库的所有权限。
(password为root用户密码)
3.退出数据库。
这时在Windows以下远程连接该数据库,则会报
Can’t connect to MySQL server on ‘xxx.xxx.xxx.xxx’的错误。
此错误原因在于:
ubuntu中MySQL监听的3306portIP问题。查看ubuntu中3306port监听
#netstat -anpt|grep 3306
能够发现,当前默认监听的是127.0.0.1:3306
这里改动127.0.0.1的ip地址为你当前的ip地址。
使用root权限,改动/etc/mysql/my.cnf文件里bind-address,将bind-address=127.0.0.1改动为本机IP。或者凝视掉(凝视掉就能够不限ip了)
重新启动MySQL服务。再使用上面命令查看port监听,就会发现已经变成了本机IP:3306。这时,就还是无法远程连接了。
阿里云的ubuntu再关闭 防火墙或者开放3306port就可以
可是腾讯云要配置安全组. 否则关闭防火墙也没用
3 【最关键的一点】安全组一定要配置开放3306port等
(只在server上配置没实用)
因为腾讯自带的linux安全组 不同意改动 选择 开放全部port的安全组或者
自己创建和配置 并加入server
(忽略了安全组的配置。折腾了一天 浪费了大量时间)
參考文章:http://jingyan.baidu.com/article/ea24bc398522b3da62b331d3.html
http://bbs.qcloud.com/thread-11554-1-1.html