MySQL 用户密码权限 管理

77 阅读1分钟

MySQL 用户密码和权限管理很方便、到位,可控制每个用户从哪个IP地址登录和访问某个数据库的某个表
1、root 用户最好只允许本机(localhost 登录)
在mysql 安装完成后,执行默认的安装脚本后 root 用户是允许在本机无密码访问的,为了确认root只能在本机登录并设置密码,在第一次用 mysql client 登录系统 执行下面语句
mysql>grant all on . to 'root'@'localhost' identified by '密码' WITH GRANT OPTION;
mysql> flush privileges;

2、每个数据库分配一个用户,不要使用 root 来管理,如创建一个数据库 mydb ,把管理权交给 myuser, 密码是 mypass ,只允许从 '192.168.1.124' ip来访问, 在root 用户登录下执行下面语句
mysql>create database mydb
mysql> grant all on mydb.* to 'myuser'@'192.168.1.124' identified by 'mypass'
mysql> flush privileges;
【注】 上面的grant 语句会创建用户 myuser ,不需要在手动创建。 如果想让 myuser在其它机器访问数据库可以继续使用 如上的 grant 语句并修改 192.168.1.124 ,如果有不确定访问地址的 修改成 '%' 如下:
mysql> grant all on mydb.* to 'myuser'@'%' identified by 'mypass'
mysql> flush privileges;
但是 '%' 是不包括本机的
3、 root 密码忘记 使用下语句修改
mysqladmin-u root password '密码'