mysql.server start
mysql.server stop
mysql_secure_installation
--为root用户设置密码
--删除匿名帐号
--取消root用户远程登陆
--删除test库和对test库的访问权限
--刷新受权表使修改生效java
mysql -uroot -p
show databases;
CREATE USER 'username'@'host' IDENTIFIED BY 'password';
username – 你将建立的用户名 host – 指定该用户在哪一个主机上能够登录,若是是本地用户可用localhost, 如 果想让该用户能够从任意远程主机登录,能够使用通配符% password – 该用户的登录密码,密码能够为空,若是为空则该用户能够不须要密码登 陆服务器
CREATE USER 'javacui'@'localhost' IDENTIFIED BY '123456'; CREATE USER 'javacui'@'172.20.0.0/255.255.0.0' IDENDIFIED BY '123456'; CREATE USER 'javacui'@'%' IDENTIFIED BY '123456'; CREATE USER 'javacui'@'%' IDENTIFIED BY ''; CREATE USER 'javacui'@'%';
GRANT privileges ON databasename.tablename TO 'username'@'host';
privileges – 用户的操做权限,如SELECT , INSERT , UPDATE 等(详细列表见该文最后面).若是要授予所 的权限则使用ALL databasename – 数据库名
tablename-表名,若是要授予该用户对全部数据库和表的相应操做权限则可用 表示, 如.*mysql
GRANT SELECT, INSERT ON test.user TO 'javacui'@'%'; GRANT ALL ON *.* TO 'javacui'@'%'
以上命令受权的用户没有权限给其余用户受权,若是想给其余用户受权使用以下命令sql
GRANT privileges ON databasename.tablename TO 'username'@'host' WITH GRANT OPTION;
REVOKE privilege ON databasename.tablename FROM 'username'@'host';
假如你在给用户’javacui’@'%’受权的时候是这样的(或相似 的):GRANT SELECT ON test.user TO ‘javacui’@'%’, 则在使用 REVOKE SELECT ON . FROM ‘javacui’@'%’;命令并不能撤销该用户对test数据库中user表的SELECT 操做
相反,若是受权使用的是GRANT SELECT ON . TO ‘javacui’@'%’;则 REVOKE SELECT ON test.user FROM ‘javacui’@'%’;命令也不能撤销该用户对test数据库中user表的 Select 权限
具体信息能够用命令 SHOW GRANTS FOR ‘javacui’@'%’;数据库
#设置其它用户安全
SET PASSWORD FOR 'username'@'host' = PASSWORD('newpassword');
#设置当前登录用户服务器
SET PASSWORD = PASSWORD("newpassword");
DROP USER ‘username’@'host’;
flush privileges;