您的位置:首页 > 数据库 > MySQL

Mysql 5.7.9以上版本 设置账户密码及授权

2016-10-16 11:17 197 查看
停止mysql service mysql stop

运行mysqld_safe --skip-grant-tables & 

如果此时不想被远程连接:mysqld_safe --skip-grant-tables --skip-networking &
修改密码执行

mysql>update mysql.user set authentication_string=password('new_password') where user='root' and Host = 'localhost';

重启mysql,执行

mysql> alter mysql.user 'root'@'localhost' identified by 'new_password'

网文说也可以:set password for 'root'@'localhost'=password('new_password') 

如果出现ERROR 1819 (HY000): Your password does not satisfy the current policy requirements错误信息,这和密码的安全等级相关,查看安全等级命令如下

mysql> SHOW VARIABLES LIKE 'validate_password%';

+--------------------------------------+--------+

| Variable_name                        | Value  |

+--------------------------------------+--------+

| validate_password_dictionary_file    |        |

| validate_password_length             | 8      |

| validate_password_mixed_case_count   | 1      |

| validate_password_number_count       | 1      |

| validate_password_policy             | MEDIUM |

| validate_password_special_char_count | 1      |

+--------------------------------------+--------+

通过  SET GLOBAL  validate_password_policy='LOW';  命令,降低安全等级后,就可以直接使用,限制是必须8个字符以上;

关于安全等级更详细的介绍如下

LOW 政策只测试密码长度。 密码必须至少有8个字符长。

MEDIUM 政策的条件 密码必须包含至少1数字字符,1 大写和小写字符,和1特别 (nonalphanumeric)字符。

STRONG 政策的情况 密码子字符串长度为4的或更长时间不能匹配 单词在字典文件中,如果一个人被指定。

为了解决密码失效的问题, 最后在配置文件的[mysqld]字段下,增加以下字段

[mysqld]

default_password_lifetime=0

也可以通过命令行进行设置

mysql> ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER

关于密码有效期相关的更多信息,可以参考 http://dev.mysql.com/doc/refman/5.7/en/password-expiration-policy.html
打开MySQL数据库远程访问的权限

改表法

可能是你的帐号不允许从远程登陆,只能在localhost,这个时候只要在localhost的那台电脑,登入mysql后,更改 "mysql" 数据库里的 "user" 表里的 "host" 项,从"localhost"改称"%"
或者执行 

mysql> update user set host = '%' where user = 'root';  

授权法

//赋予任何主机访问数据的权限 

mysql> GRANT ALL PRIVILEGES ON *.* TO 'test'@'%'IDENTIFIED BY '123456' WITH GRANT OPTION; 

//如果你想允许用户myuser从ip为192.168.1.6的主机连接到mysql服务器,并使用mypassword作为密码 
mysql> GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'192.168.1.6'IDENTIFIED BY 'mypassword' WITH GRANT OPTION; 

新特性

1.MySQL5.7版本终于支持了原生的JSON格式,即将关系型数据库和文档型NO_SQL数据库集于一身

2.UNDO log在线收缩
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐