怎样设置才能允许外网访问MySQL
答案:2 悬赏:20 手机版
解决时间 2021-03-14 04:01
- 提问者网友:wodetian
- 2021-03-13 11:28
怎样设置才能允许外网访问MySQL
最佳答案
- 五星知识达人网友:長槍戰八方
- 2021-03-13 12:41
设置mysql服务允许外网访问,修改mysql的配置文件,有的是my.ini,有的是my.cnf【linux】.
1:设置mysql的配置文件
/etc/mysql/my.cnf
找到 bind-address =127.0.0.1 将其注释掉;//作用是使得不再只允许本地访问;
重启mysql:/etc/init.d/mysql restart;
2:登录mysql数据库:mysql -u root -p
mysql> use mysql;
查询host值:
mysql> select user,host from user;
如果没有"%"这个host值,就执行下面这两句:
mysql> update user set host='%' where user='root';
mysql> flush privileges;
或者也可以执行:
mysql>grand all privileges on *.* to root@'%' identifies by ' xxxx';
其中 第一个*表示数据库名;第二个*表示该数据库的表名;如果像上面那样 *.*的话表示所有到数据库下到所有表都允许访问;
‘%':表示允许访问到mysql的ip地址;当然你也可以配置为具体到ip名称;%表示所有ip均可以访问;
后面到‘xxxx'为root 用户的password;
举例:
任意主机以用户root和密码mypwd连接到mysql服务器
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'mypwd' WITH GRANT OPTION;
mysql> flush privileges;
IP为192.168.1.102的主机以用户myuser和密码mypwd连接到mysql服务器
mysql> GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'192.168.1.102' IDENTIFIED BY 'mypwd' WITH GRANT OPTION;
mysql> flush privileges;
1:设置mysql的配置文件
/etc/mysql/my.cnf
找到 bind-address =127.0.0.1 将其注释掉;//作用是使得不再只允许本地访问;
重启mysql:/etc/init.d/mysql restart;
2:登录mysql数据库:mysql -u root -p
mysql> use mysql;
查询host值:
mysql> select user,host from user;
如果没有"%"这个host值,就执行下面这两句:
mysql> update user set host='%' where user='root';
mysql> flush privileges;
或者也可以执行:
mysql>grand all privileges on *.* to root@'%' identifies by ' xxxx';
其中 第一个*表示数据库名;第二个*表示该数据库的表名;如果像上面那样 *.*的话表示所有到数据库下到所有表都允许访问;
‘%':表示允许访问到mysql的ip地址;当然你也可以配置为具体到ip名称;%表示所有ip均可以访问;
后面到‘xxxx'为root 用户的password;
举例:
任意主机以用户root和密码mypwd连接到mysql服务器
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'mypwd' WITH GRANT OPTION;
mysql> flush privileges;
IP为192.168.1.102的主机以用户myuser和密码mypwd连接到mysql服务器
mysql> GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'192.168.1.102' IDENTIFIED BY 'mypwd' WITH GRANT OPTION;
mysql> flush privileges;
全部回答
- 1楼网友:摆渡翁
- 2021-03-13 12:56
设置mysql服务允许外网访问,修改mysql的配置文件,有的是my.ini,有的是my.cnf【linux】.
1:设置mysql的配置文件
/etc/mysql/my.cnf
找到 bind-address =127.0.0.1 将其注释掉;//作用是使得不再只允许本地访问;
重启mysql:/etc/init.d/mysql restart;
2:登录mysql数据库:mysql -u root -p
mysql> use mysql;
查询host值:
mysql> select user,host from user;
如果没有"%"这个host值,就执行下面这两句:
mysql> update user set host='%' where user='root';
mysql> flush privileges;
或者也可以执行:
mysql>grand all privileges on *.* to root@'%' identifies by ' xxxx';
其中 第一个*表示数据库名;第二个*表示该数据库的表名;如果像上面那样 *.*的话表示所有到数据库下到所有表都允许访问;
‘%':表示允许访问到mysql的ip地址;当然你也可以配置为具体到ip名称;%表示所有ip均可以访问;
后面到‘xxxx'为root 用户的password;
举例:
任意主机以用户root和密码mypwd连接到mysql服务器
mysql> grant all privileges on *.* to 'root'@'%' identified by 'mypwd' wi...
登录mysql数据库;
查询host值;mysql restart; flush privileges;;@' identified by '.168:
mysql>.* to ' with grant option.1 将其注释掉;%表示所有ip均可以访问:mysql -u root -p
mysql>为root 用户的password;init,host from user;etc/ with grant option;当然你也可以配置为具体到ip名称.cnf【linux】.*的话表示所有到数据库下到所有表都允许访问;/,有的是my;myuser'.0;
mysql> flush privileges:设置mysql的配置文件
/:表示允许访问到mysql的ip地址.1;%'.102的主机以用户myuser和密码mypwd连接到mysql服务器
mysql>@'
如果没有".* to 'etc/
mysql>:
任意主机以用户root和密码mypwd连接到mysql服务器
mysql>,就执行下面这两句,修改mysql的配置文件.168;
其中 第一个*表示数据库名; update user set host='my; identifies by 'grand all privileges on *;
mysql>;
重启mysql; grant all privileges on *; flush privileges;192:
mysql>%";第二个*表示该数据库的表名;%'.cnf
找到 bind-address =127;这个host值;root' xxxx'.0;mypwd';
举例;;%'root'.ini;
2;作用是使得不再只允许本地访问.
1; where user='mypwd';
‘%' use mysql.d/;如果像上面那样 *; select user.* to root@'.102',有的是my;;
ip为192:/;
后面到‘xxxx' grant all privileges on *.1; identified by ':
mysql>mysql/
或者也可以执行;/设置mysql服务允许外网访问
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯