网站地图    收藏   

主页 > 后端 > mysql数据库 >

分享Ubuntu下如何设置MySQL远程连接

来源:未知    时间:2015-04-19 16:33 作者:xxadmin 阅读:

[导读] 在Ubuntu安装的Mysql无法远程连接,现在我们来告诉你如何设置,如果你的Mysql无法用密码登录,可以一下前面部分. 1、mysql安装后密码无法登陆问题 这时你需要进入/etc/mysql目录下,然后查看里...

在Ubuntu安装的Mysql无法远程连接,现在我们来告诉你如何设置,如果你的Mysql无法用密码登录,可以一下前面部分.

1、mysql安装后密码无法登陆问题

这时你需要进入/etc/mysql目录下,然后查看里面的用户名和密码,然后:

sudo vim debian.cnf

使用这个文件中的用户名和密码进入mysql,假如debian.cnf中的用户名为debian-sys-maint,则:mysql -u debian-sys-maint -p

按回车,这时需要你输入密码,复制debian.cnf中的密码,不要手动输入,因为容易产生错误,在终端中会出现mysql>这样的提示:

  1. use mysql 
  2. show tables;//查看mysql数据库中的表,会看到一个user表。 
  3. select * from user;//查看一下这个表中是否有root用户,如果有: 
  4. update user set password=password("root") whereuser="root";//更改root用户进入mysql的密码。 
  5. flush privileges--phpfensi.com 

quit退出mysql,然后用 mysql -u root -proot 重新登录mysql即可。

如果user表中没有root用户:用grant命令:

grant all privileges on *.* to root@localhost identified by'123'

其中*.*代表所有数据库中的所有表,即database name.your table'123'表示为root用户的密码.

flush privileges;

select * from user;查看一下user这个表中是否有root用户。如果有表示添加成功。

quit退出mysql.

mysql -u root -p 123进入mysql即可.

2、配置远程连接

① vim /etc/mysql/my.cnf 找到 bind-address = 127.0.0.1

注释掉这行,如:#bind-address = 127.0.0.1 或者改为:bind-address = 0.0.0.0 允许任意IP访问;或者自己指定一个IP地址,重启 MySQL:sudo /etc/init.d/mysql restart

② 授权用户能进行远程连接.

grant all privileges on *.* to root@"%" identified by "password" with grant option;

flush privileges;

第一行命令解释如下,*.*:第一个*代表数据库名,第二个*代表表名,这里的意思是所有数据库里的所有表都授权给用户,root:授予root账号,“%”:表示授权的用户IP可以指定,这里代表任意的IP地址都能访问MySQL数据库,“password”:分配账号对应的密码,这里密码自己替换成你的mysql root帐号密码.

自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习

京ICP备14009008号-1@版权所有www.zixuephp.com

网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com

添加评论