首页 > 数据库 > mysql教程 > Ubuntu下安装MySql并在外网连接_MySQL

Ubuntu下安装MySql并在外网连接_MySQL

WBOY
发布: 2016-06-01 13:01:40
原创
1304 人浏览过

纯新手教程。

1.安装mysql
apt-get install mysql-server mysql-client libmysqlclient15-dev  
登录后复制

安装过程中会提示为数据库root账户设置密码,输入两边密码即可

2、进入

mysql  mysql -uroot -p 
登录后复制

3、重新设置mysql用户root的密码

GRANT ALL PRIVILEGES ON *.* TO root@localhost IDENTIFIED BY "123456";
登录后复制

4、创建新数据库 proxy

create database proxy;
登录后复制

5、创建用户test 对proxy库有全部操作权限

grant all privileges on proxy.* to test@localhost identified by "testpwd";
登录后复制

6、允许test用户可以从任意机器上登入MySQL

grant all privileges on proxy.* to test@"%" identified by "testpwd"; 
登录后复制

7、退出mysql

exit 
登录后复制

8、mysql安装完成后默认监听的地址是127.0.0.1,端口是3306。可以通过以下命令看到其监听的地址以及端口:

netstat -ntulp
登录后复制

9、如果监听的是127.0.0.1,那么从外网是连不上数据库的。这时可以修改监听的地址为0.0.0.0:

sudo vim /etc/mysql/my.cnf
登录后复制

找到bind-address=127.0.0.1这一行,将127.0.0.1改为0.0.0.0,保存退出

10、重启mysql,使配置生效

service mysql restart 
登录后复制

现在应该就可以在远程用MySql_Front或者phpmyadmin远程连接mysql数据库了。只不过只能用刚授权过的test账户远程登录。root账户默认是禁止远程登录数据库的。可以用以下两种办法来允许root账户远程登录数据库:

(1). 改表法。

可能是你的帐号不允许从远程登陆,只能在localhost。这个时候只要在localhost的那台电脑,登入mysql后,更改 "mysql" 数据库里的 "user" 表里的 "host" 项,从"localhost"改称"%"

<pre name="code" class="sql">mysql -u root -p
mysql>use mysql;
mysql>update user set host = &#39;%&#39; where user = &#39;root&#39;;
mysql>select host, user from user;
登录后复制

(2).授权法。

例如,你想myuser使用mypassword从任何主机连接到mysql服务器的话:

GRANT ALL PRIVILEGES ON *.* TO &#39;myuser&#39;@&#39;%&#39; IDENTIFIED BY &#39;mypassword&#39; WITH GRANT OPTION;
登录后复制
如果你想允许用户myuser从ip为192.168.1.3的主机连接到mysql服务器,并使用mypassword作为密码
GRANT ALL PRIVILEGES ON *.* TO &#39;myuser&#39;@&#39;192.168.1.3&#39; IDENTIFIED BY &#39;mypassword&#39; WITH GRANT OPTION;
登录后复制

如果考虑到安全性的问题,又想禁止root账户远程登录mysql数据库:

delete from user where user = &#39;root&#39; and host = &#39;%&#39;;
select host, user from user;
flush privileges;
登录后复制
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板