使用场景:当需要外部远程访问mysql数据库时,如windows中访问ubuntu中的mysql数据库。

方法跟简单,只需要按照以下操作逐步实行即可。
注意mysql配置文件路径可能不同。

一、远程连接MySQL设置

1. 修改表设置

  • 登录mysql: mysql -uroot -p
  • use mysql;
  • 给root用户添加远程访问允许:update user set host = '%' where user = 'root';

2. 修改配置文件

  • 修改mysql配置文件:sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf
  • 修改bind-address字段绑定为本机ip,例:bind-address = 192.168.94.128
  • 重启mysql: sudo service mysql restart

3. 在另一台主机中远程访问mysql

  • mysql -uroot -p -h 192.168.94.128
    我在window中访问我的ubuntu数据库成功:

4. MySQL授权
如果发现无法连接,则需要在远程MySQL内授权远端访问指定数据库,具体授权方式:

  • 在MySQL端登陆进入MySQL内;
  • 使用命令1:grant all privileges on datanase_name.* to 'root' @ '192.168.94.168' identified by 'root' with grant option;
  • 其含义是:授权给192.168.94.168下的root用户,允许其访问当前主机root用户的database_name数据库下的所有数据表。.*代表该数据库下的所有表;
  • 使用命令2:flush privileges;刷新授权使其生效;
  • 然后重试第三步。

二、远程连接Redis设置

Redis远程连接的配置与mysql差不多,而且更简单。

  • 修改配置文件:
    sudo vim /etc/redis/redis.conf,
    修改bind-address为本机ip,如:bind-address = 192.168.94.128
  • 重启redis:sudo service redis-server restart
  • 在外部连接到redis:redis-cli -h 192.168.94.128

文章来源于互联网:如何在外部连接到MySQL、Redis数据库

发表评论