- 测试环境 Ubuntu 16.0.4 -新版本 mysql Ver 14.14 Distrib 5.5.54
1.查看 MySQL 版本 ,执行: mysql -V
2.关闭 mysql,可用下列2种方法
a. 执行: msyqladmin stop -u root -p 然后输入密码即可
b. 执行 :/etc/init.d/mysql stop (root用户下使用,否则需要加sudo)
3.启动 mysql 执行: /etc/init.d/mysql start
4.重启 mysql 执行: /etc/init.d/mysql restart (注意,重启要几秒时间)
5.查看 mysql 监听的端口&地址 执行:netstat -nutlp|grep mysql
ex:监听了本机所有的IP
tcp 0 0.0.0.0:3306 0.0.0.0:* LISTEN
ex:监听了本机所有的IP
tcp 0 127.0.0.1:3306 0.0.0.0:* LISTEN
ex:只允许指定的 IP 192.168.0.111 访问数据库
tcp 0 127.0.0.1:3306 0.0.0.0:* LISTEN
6.修改mysql监听端口&地址---允许外网访问--远程访问数据库第一步
a.mysql 配置文件 /etc/mysql/my.cnf (不同版本,配置文件可能在不同位置,这里要好好寻找)
b.编辑此文件 vi /etc/mysql/my.cnf
找到此行 bind-address =127.0.0.1 修改为 bind-address =0.0.0.0 或注释 #bind-address =127.0.0.1
7.添加一个可以远程连接的账号
a.root身份登入: mysql -u root -p ,然后输入密码
b.创建用户格式:grant 权限 on 数据库名称.表名称 to 用户名@'%' identified by '密码';
c.立即刷新权限表:flush privileges (不刷新权限表将会导致授权失败)
例子: a.添加|覆盖|修改zhangsan用户(可远程访问),给予他所有数据库的所有权限,并设置其密码为123456789 grant all on *.* to zhangsan@'%' identified by '123456789'; 第一个*号前面填写数据库名称
grant all on test.* to zhangsan@'%' identified by '123456789'; b.常用权限 select,update,delete, ,create,drop,index,alter,grant,references 特殊权限,一般不赋予(FILE、PROCESS、RELOAD和SHUTDOWN) c.移除权限:remove 权限 on 数据库名称.表名称 from 用户名称