mysql创建用户并授权:

格式:grant 权限 on 数据库名.表名 to 用户@登录主机 identified by "用户密码";

grant[英][grɑ:nt] 承认; 同意; 准许; 授予;

例1:允许mk用户从localhost登录

mysql> grant all on book.* to mk1@localhost identified by "123456"; #允许访问book数据库下的所有表, 只能访问book表,而且是同一个服务器的用户
mysql> grant all privileges on *.* to mk2@'%' identified by '123456' with grant option;# with grant option 意思是mk2用户可以把自己的权限下放给新创建的用户。 另外,加不加privileges都可以。%指的任意远程主机,不包括本地地址和localhostFlush privileges; 刷新数据库 
[root@xuegod64 ~]# mysql -u mk2 -h 192.168.1.63 -p123456mysql>  #登录正常
[root@xuegod63 ~]# mysql -u mk2 -h 192.168.1.63 -p123456 #不能登录
mysql> grant all privileges on *.* to 'mk2'@'192.168.1.63' identified by '123456' with grant option; [root@xuegod63 ~]# mysql -u mk2 -p123456  #不能登录
mysql> grant all privileges on *.* to 'mk2'@'localhost' identified by '123456' with grant option;

只有手动修改了mysql相关字段,才需要执行mysql> flush privileges;

只授权部分权限:

mysql> grant select,insert,update,delete,create,drop on aa.* to 'custom'@'localhost' identified by '123456';
mysql> use mysql;mysql> insert into user (Host,User,Password) values('localhost','grace','123456');mysql> select Host,User,Password from user where User="grace";+-----------+-------+----------+| Host   | User | Password |+-----------+-------+----------+| localhost | grace | 123456  |+-----------+-------+----------+
mysql> insert into user (Host,User,Password) values('localhost','grace1',password("123456"));Query OK, 1 row affected, 3 warnings (0.00 sec)mysql> select Host,User,Password from user where User="grace1";+-----------+--------+-------------------------------------------+| Host   | User  | Password                 |+-----------+--------+-------------------------------------------+| localhost | grace1 | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 |+-----------+--------+-------------------------------------------+1 row in set (0.01 sec)mysql> flush privileges;  #刷新权限表,使配置文件生效
[root@xuegod63 ~]# service mysqld restart
[root@xuegod63 ~]# mysql -u grace -p123456 #登录不成功ERROR 1045 (28000): Access denied for user 'grace'@'localhost' (using password: YES)[root@xuegod63 ~]# mysql -u grace1 -p123456 #登录成功

方法一:使用mysqladmin修改密码

例1:当root没有密码时:

[root@xuegod63 mysql]# mysqladmin -u root -h 192.168.1.63 password '123'[root@xuegod63 mysql]# mysql -u root -h 192.168.1.63 -p123
[root@xuegod63 ~]# mysqladmin -u root password '123456' -p123
mysql> SET PASSWORD FOR 'grace1'@'localhost' = PASSWORD('123456');#注,你的mysql库中已经有记录:grace1'@'localhostmysql> set password = password ('1234567');mysql> FLUSH PRIVILEGES;
[root@xuegod63 mysql]# /etc/init.d/mysqld stop[root@xuegod63 mysql]# mysqld_safe --skip-grant-tables --skip-networking

重新再开一个终端: 直接就可以进去了, 然后用update修改密码

[root@xuegod63 aa]# mysql   #执行mysql> update mysql.user set password=password('123456') where host='localhost' and user='root';[root@xuegod63 aa]# /etc/init.d/mysqld restartStopping mysqld:                      [ OK ]

更多相关文章

  1. 'xlargeScreens' in package 'android'
  2. Android(安卓)版本兼容 — Android(安卓)6.0 和 7.0后获取Mac地
  3. android“设置”里的版本号
  4. Android(安卓)version and Linux Kernel version
  5. opengrok setup on ubuntu for android source code browser
  6. Android——开发环境
  7. android通过ksoap2对webservice的解析
  8. Android如何获得系统版本
  9. Android,一个思路实现APP版本更新

随机推荐

  1. Java 字节流与字符流的总结和理解
  2. Java读取数据源相关信息
  3. 对一个JavaScript对象数组进行排序。
  4. JAVA视频笔记(day5)
  5. 自定义MapReduce输入格式 - 找不到构造函
  6. java数组常用功能
  7. JAVA异步加回调的例子
  8. java中文乱码解决之道(三)—–编码详情:伟大
  9. NoSuchMethodError: javax.servlet.http.
  10. [置顶] Java中的类装载和初始化模