首页 > 数据库 > MySQL > 正文

ubuntu 16.04下mysql5.7.17开放远程3306端口

2024-07-24 12:52:45
字体:
来源:转载
供稿:网友

开启MySQL的远程访问权限

默认mysql的用户是没有远程访问的权限的,因此当程序跟数据库不在同一台服务器上时,我们需要开启mysql的远程访问权限。

主流的有两种方法,改表法和授权法。

相对而言,改表法比较容易一点,个人也是比较倾向于使用这种方法,因此,这里只贴出改表法

1、登陆mysql

mysql -u root -p 

2、修改mysql库的user表,将host项,从localhost改为%。%这里表示的是允许任意host访问,如果只允许某一个ip访问,则可改为相应的ip,比如可以将localhost改为192.168.1.123,这表示只允许局域网的192.168.1.123这个ip远程访问mysql。

mysql> use mysql; mysql> select host,user form user; mysql>update user set host = '%' where user ='root'; mysql>select host,user from user; mysql> flush privileges; mysql> quit;

首先查看端口是否打开 netstat -an|grep 3306

打开mysql配置文件vim /etc/mysql/mysql.conf.d/mysqld.cnf
将bind-address = 127.0.0.1注销​
重启动ubuntu
再次查看端口是否打开 netstat -an|grep 3306

================================

将root用户授权给所以连接:grant all privileges on *.* to 'root'@'%' identified by 'xxxxxx';
最后一个为mysql密码​
让权限立即生效:flush privileges;​

到此所以操作完成,可以在任何主机连接此mysql数据库服务器了。

MySQL远程连接不上的解决://www.Vevb.com/article/103770.htm

Centos7.1防火墙开放端口://www.Vevb.com/article/103777.htm

CentOS 7开放端口://www.Vevb.com/article/103773.htm

ubuntu 15.04 mysql开放远程3306端口://www.Vevb.com/article/103784.htm

//www.Vevb.com/article/103766.htm

root@3bc476b7e0d5:~# vim /etc/mysql/mysql.conf.d/mysqld.cnf root@3bc476b7e0d5:~# netstat -an | grep 3306 tcp 0 0 127.0.0.1:3306 0.0.0.0:* LISTEN
root@3bc476b7e0d5:/# service mysql enable Usage: /etc/init.d/mysql start|stop|restart|reload|force-reload|status root@3bc476b7e0d5:/# netstat -an | grep 3306 tcp6 0 0 :::3306 :::* LISTEN root@3bc476b7e0d5:/# mysql --version mysql Ver 14.14 Distrib 5.7.16, for Linux (x86_64) using EditLine wrapper root@3bc476b7e0d5:/# mysql -u root -p Enter password: Welcome to the MySQL monitor. Commands end with ; or /g. Your MySQL connection id is 4 Server version: 5.7.16-0ubuntu0.16.04.1 (Ubuntu) Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. Type 'help;' or '/h' for help. Type '/c' to clear the current input statement. mysql> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | fabric | | mysql | | performance_schema | | sys | +--------------------+ 5 rows in set (0.02 sec)
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表