北京SEO

解决mysql不能远程连接数据库方法

2019/10/10/17:33:32  阅读:2060  来源:谷歌SEO算法  标签: 自学SEO

一般的mysql是不建义开启远程访问权限的,这样相对来说安全一些,不过今天我来为需要远程访问权限朋友介绍一下.

1、登陆mysql数据库

mysql -u root -p

查看user表,代码如下:

  1. mysql>usemysql;
  2. Databasechanged
  3. mysql>selecthost,user,passwordfromuser;
  4. +--------------+------+-------------------------------------------+
  5. |host|user|password|
  6. +--------------+------+-------------------------------------------+
  7. |localhost|root|*A731AEBFB621E354CD41BAF207D884A609E81F5E|
  8. |192.168.1.1|root|*A731AEBFB621E354CD41BAF207D884A609E81F5E|--phpfensi.com
  9. +--------------+------+-------------------------------------------+
  10. 2rowsinset(0.00sec)

可以看到在user表中已创建的root用户,host字段表示登录的主机,其值可以用IP,也可用主机名.

(1)有时想用本地IP登录,那么可以将以上的Host值改为自己的Ip即可。

2、实现远程连接(授权法)

将host字段的值改为%就表示在任何客户端机器上能以root用户登录到mysql服务器,建议在开发时设为%。

update user set host = ’%’ where user = ’root’;

将权限改为ALL PRIVILEGES,代码如下:

  1. mysql>usemysql;
  2. Databasechanged
  3. mysql>grantallprivilegeson*.*toroot@'%'identifiedby"root";
  4. QueryOK,0rowsaffected(0.00sec)
  5. mysql>selecthost,user,passwordfromuser;
  6. +--------------+------+-------------------------------------------+
  7. |host|user|password|
  8. +--------------+------+-------------------------------------------+
  9. |localhost|root|*A731AEBFB621E354CD41BAF207D884A609E81F5E|
  10. |192.168.1.1|root|*A731AEBFB621E354CD41BAF207D884A609E81F5E|
  11. |%|root|*A731AEBFB621E354CD41BAF207D884A609E81F5E|
  12. +--------------+------+-------------------------------------------+
  13. 3rowsinset(0.00sec)

这样机器就可以以用户名root密码root远程访问该机器上的MySql.

3、实现远程连接(改表法),代码如下:

  1. usemysql;
  2. updateusersethost='%'whereuser='root';

这样在远端就可以通过root用户访问Mysql.

另一种方法:mysql默认是不可以通过远程机器访问的,通过下面的配置可以开启远程访问,我的mysql环境是ubuntu+mysql5.

1.修改/etc/mysql/my.conf,修改bind-address,指定为本机实际ip地址,你的my.con修改完大概是如下的样子,代码如下:

  1. [mysqld]
  2. # * basic settings
  3. #
  4. default-character-set=utf8
  5. default-storage-engine=innodb
  6. bind-address    = 192.168.1.107
  7. user            = mysql
  8. pid-file        = /var/run/mysqld/mysqld.pid
  9. socket          = /var/run/mysqld/mysqld.sock
  10. port            = 3306
  11. basedir         = /usr
  12. datadir         = /var/lib/mysql
  13. tmpdir          = /tmp
  14. language        = /usr/share/mysql/english
  15. skip-external-locking

2.用root登陆mysql执行如下命令,代码如下:

  1. grant all on sonardb.* to sonar@'%' identified by '123456';
  2.  grant all on sonardb.* to sonar@localhost identified by '123456';

sonardb替换为你想访问的数据库名,sonar是你的想使用的用户名,123456替换为你的密码,这样就开启了远程访问功能.

上面的两种方法一种是直接用root用户在cmd模式下操作,一种是在配置文件里面操作,大同小义了吧.

广告内容

解决mysql不能远程连接数据库方法 解决mysql不能远程连接数据库方法 解决mysql不能远程连接数据库方法

相关阅读

热门评论

sunshine技术博客 sunshine技术博客

sunshine技术博客

总篇数164

精选文章

RMAN中catalog和nocatalog区别介绍 小技巧:为Linux下的文件分配多个权限 zimbra8.5.1安装第三方签名ssl证书的步骤 解决mysql不能远程连接数据库方法 windows服务器mysql增量备份批处理数据库 mysql中slow query log慢日志查询分析 JavaScript跨域问题总结 Linux下负载均衡软件LVS配置(VS/DR)教程 mysql中权限参数说明 MYSQL(错误1053)无法正常启动

SEO最新算法