linux下的mysql用户,其权限是有限的,并不能做所有的操作,比如,某个用户只能在本地操作,不能远程登录进去;某个用户只能对特定的数据库或者数据表进行操作,而不能操作其他库或表,所以需要具有较高权限(如root)的用户赋予他相应的权限。
赋权限命令:grant 权限1,权限2,...权限n on 数据库名.表名 to 用户名@地址 identified by ‘连接口令’
权限1,权限2,…权限n表示各种权限,如select,insert,update,delete,create,drop,index,alter,grant,references,reload,shutdown,process,file等14个权限,可以用all privileges或者all代替,表示赋予用户全部权限。
数据库名.表名,可以用 *.* 代替,表示赋予该用户操作服务器上所有数据库所有表的权限。
用户地址,可以是localhost,也可以是ip地址、机器名字、域名等。使用%表示从可以任何地址连接。
‘连接口令’,是该用户的登录密码,不能为空,否则创建失败。
示例:
grant select,insert,update,delete,create,drop on jd.user to jd@192.168.1.110 identified by '123456' 。
给从192.168.1.110登录的用户jd分配 数据库jd的user表 进行select,insert,update,delete,create,drop等操作的权限,口令为123456。