linux mysql 用户管理

一、root用户密码的维护:
 
       由于安装MySQL完后,MySQL会自动提供一个不带密码的root用户,为了安全起见给root设置密码:
 
       #mysqladmin -u root password 123 (123为密码,也可以写成:'123'或"123") ;
 
       设置密码后登入时就不能直接输入mysql了,必须跟些参数了,如下:
 
       [root@localhost ~]# mysql -u root -p (-u 后跟登入的用户名,-p 提示要密码登入)
       Enter password:(输入密码)

       修改密码:
       [root@localhost ~] #mysqladmin -u root  -p  password  123456 (password 后跟的是要更新的新密码)
       Enter password:(输入原始密码,回车即可)
 
二、其他用户的增加和删除:
 
      以root用户登入,在mysql中有一张mysql.user表是存储MySQL中所有用户的信息表,所以可以直接增加删除这个表的记录就可增加和删除用户;
     1.添加用户(有两种形式):
       A.mysql> grant all on *.* to yushan@"%" identified by "123" ; 
         mysql>flush privileges; (刷新系统权限表)
       (执行完会在mysql.user表插入一条记录,all表示-www.2cto.com-所有权限(包括增 删 改 查等权限), *.* 表示所有 数据库,yushan为添加的用户名,123为密码,%为匹配的所有主机,上面的信息都可以指定如grant select,update on db.* to yushan@localhost identified by '123";)
 
 
   B.直接对mysql.user添加一条记录
 
   mysql> insert into mysql.user(Host,User,Password) values("localhost","yusuhan",password("123")); 
   mysql>flush privileges; 
   这样就创建了一个名为:yushan 密码为:123 (密码是经过 加密的 ) 的用户,不过这样没有权限因为只添加了三个字段,也可通过grant添加权限:
 
    mysql>grant all  on *.* to yushan@localhost identified by '123";
   mysql>flush privileges;(刷新 系统权限表)
 
   (这种好像有点啰嗦了。直接用grant不久得了)
 
   添加完用户 如果要远程登入MySQL,必须跟上主机Ip 如下:
 
   [root@localhost ~]# mysql -u yushan -p -h 192.168.59.123 
   Enter password:(输入密码)
 
  2.删除用户 :
 
   mysql>delete from mysql.user where user ='yushan' ;
 
   mysql>flush privileges; (刷新系统权限表)
 
  其他用户的密码修改与root的一样,在这里无论是添加或是删除操作后必须来个flush privileges;这样才能起作用特别是删除用户后,如果未执行,被删除的用户还可登入,以上都是在MySQL root用户下操作,为了MySQL的安全,应该给用户指定相应的权限

猜你喜欢

转载自blog.csdn.net/liuxiaoxiaosmile/article/details/51833289