Linux 上安装 Mysql 设置root密码问题
Ubuntu 18.10.1
Mysql 5.7.26-0
安装mysql
apt-get install mysql-server
安装完可以直接使用,但是新版本在安装过程中没有提示设置root用户密码,使用如下方法设置:
sudo mysql_secure_installation
过程中提示是否开启 VALIDATE PASSWORD PLUGIN,就是设置密码强度检查,自行选择:
VALIDATE PASSWORD PLUGIN can be used to test passwords
and improve security. It checks the strength of password
and allows the users to set only those passwords which are
secure enough. Would you like to setup VALIDATE PASSWORD plugin? Press y|Y for Yes, any other key for No:
如果后面要再修改,可以去 /etc/mysql/my.cnf 里面增加:
validate_password=OFF
选择是的话会让你选择等级:
LOW Length >=
MEDIUM Length >= , numeric, mixed case, and special characters
STRONG Length >= , numeric, mixed case, special characters and dictionary file Please enter = LOW, = MEDIUM and = STRONG:
然会会让你输入root密码,注意一定要符合上面你选择的要求:
Please set the password for root here. New password: Re-enter new password:
输入完之后会显示你的密码的安全性,并提示你是否确认使用这个:
Estimated strength of the password:
Do you wish to continue with the password provided?(Press y|Y for Yes, any other key for No) : y
之后就是一些其他方面的设置。。。
最后注意会提示你是否重新加载权限表格:
Reload privilege tables now? (Press y|Y for Yes, any other key for No) : y
Success.
以上设置完成后发现还是无法使用,采用如下方法:
mysql> select Host,User,plugin,authentication_string from user;
+-----------+------------------+-----------------------+-------------------------------------------+
| Host | User | plugin | authentication_string |
+-----------+------------------+-----------------------+-------------------------------------------+
| localhost | root | auth_socket | |
| localhost | mysql.session | mysql_native_password | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE |
| localhost | mysql.sys | mysql_native_password | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE |
| localhost | debian-sys-maint | mysql_native_password | *9FD2128DA457CDBF327277BA59C9DE1BAFA88816 |
+-----------+------------------+-----------------------+-------------------------------------------+
4 rows in set (0.00 sec)
发现root用户的认证方式是:auth_socket
它只检查用户是否使用套接字进行连接,然后比较用户名,并没有密码验证。
所以我们要修改plugin,并设置密码。
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'your_password';
注意这两个操作必须一条命令执行,先更改插件然后设置密码将不起作用,它将再次回退到auth_socket。
如果你设置密码的时候提示了以下错误:
ERROR (HY000): Your password does not satisfy the current policy requirements
需要注意你的密码策略等级。
mysql> SHOW VARIABLES LIKE 'validate_password%';
+--------------------------------------+--------+
| Variable_name | Value |
+--------------------------------------+--------+
| validate_password_check_user_name | OFF |
| 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 |
+--------------------------------------+--------+
7 rows in set (0.31 sec)
- validate_password_length 固定密码的总长度;
- validate_password_dictionary_file 指定密码验证的文件路径
- validate_password_mixed_case_count 整个密码中至少要包含大/小写字母的总个数
- validate_password_number_count 整个密码中至少要包含阿拉伯数字的个数;
- validate_password_policy 指定密码的强度验证等级,默认为 MEDIUM;
- 0/LOW:只验证长度;
- 1/MEDIUM:验证长度、数字、大小写、特殊字符;
- 2/STRONG:验证长度、数字、大小写、特殊字符、字典文件;
- validate_password_special_char_count 整个密码中至少要包含特殊字符的个数;
我们可以修改等级:
mysql> set global validate_password_policy=LOW;
当然其他字段也可以直接修改,总之设置密码时需要与其匹配。
至此root密码设置成功。
Linux 上安装 Mysql 设置root密码问题的更多相关文章
- linux上安装mysql以后root不能登录的解决办法
今天心血来潮在linux上装了mysql,装完以后用命令mysql -uroot -p登录时提示 解决办法: 使用ps aux|grep mysql 查出pid 使用kill pid结束mysql进程 ...
- 怎样在 Ubuntu Linux 上安装 MySQL
本教程教你如何在基于 Ubuntu 的 Linux 发行版上安装 MySQL.对于首次使用的用户,你将会学习到如何验证你的安装和第一次怎样去连接 MySQL. -- Sergiu MySQL 是一个典 ...
- linux上安装 mysql
一.linux 上安装 mysql 1.查看mysql是否安装 rpm -qa|grep mysql 2.卸载 mysql yum remove mysql mysql-server mysql-li ...
- MySQL 设置root密码报错:mysqladmin: connect to server at 'localhost' failed
MySQL 设置root密码报错:mysqladmin: connect to server at 'localhost' failed 1.安装完MySQL设置root密码报错如下 [root@vm ...
- 在linux上安装MySQL数据库,并简单设置用户密码,登录MySQL
在新装的Centos系统上安装MySQL数据库. <p><a href="http://www.cnblogs.com/tijun/">提君博客原创< ...
- MySQL安装后设置root 密码
Mysql安装完成后初始化root 密码为空,直接回车 使用命令行: mysqladmin -u root password "123456" 来设置root密码.这里我设置的密码 ...
- linux上安装mysql,tomcat,jdk
Linux 上安装 1 安装jdk 检测是否安装了jdk 运行 java –version 若有 需要将其卸载 a) 查看安装哪些jdk rmp –qa |grep java b) ...
- Linux上安装mysql,实现主从复制
MYSQL(mariadb) MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可.开发这个分支的原因之一是:甲骨文公司收购了MySQL后,有将MySQL闭源的 ...
- 【网站建设】Linux上安装MySQL - 12条命令搞定MySql
从零开始安装mysql数据库 : 按照该顺序执行 : a. 查看是否安装有mysql:yum list installed mysql*, 如果有先卸载掉, 然后在进行安装; b. 安装mysql客 ...
随机推荐
- 快速上手leetcode动态规划题
快速上手leetcode动态规划题 我现在是初学的状态,在此来记录我的刷题过程,便于以后复习巩固. 我leetcode从动态规划开始刷,语言用的java. 一.了解动态规划 我上网查了一下动态规划,了 ...
- Thinkphp中验证码不显示解决办法
1.页面是否存在bom头, 2.入口文件中是否有define(‘APP_DEBUG’, TRUE); //是否开启调试模式,上线时请改为false
- 抽象类和final修饰符
抽象类和抽象方法的特点: 1.都通过abstract关键字来修饰. 2.抽象类不能实例化. 3.抽象类中可以有 0~多个抽象方法.(可以没有抽象方法) 4.抽象方法只有方法声明,没有方法实现.(没有方 ...
- Vue 高德地图 路径规划 画点
CDN 方式 <!--引入高德地图JSAPI --> <script src="//webapi.amap.com/maps?v=1.4.13&key=您申请的ke ...
- json字符串和表相互转化中遇到的一个严重问题
导致脚本崩溃的一个问题 Import "zm.luae" zm.Init Dim aaa="fdsf23423dsfsdf" dim 结果表=Encode.Js ...
- zookeeper and kafka
kafka安装前期准备: 1,准备三个节点(根据自己需求决定) 2,三个节点上安装好zookeeper(也可以使用kafka自带的zookeeper) 3,关闭防火墙 chkconfig iptab ...
- 远程控制服务:配置sshd服务,密钥验证登陆
配置sshd服务 1.概述: SSH(Secure Shell)是一种能够以安全的方式提供远程登录的协议,也是目前远程管理 Linux 系统的首选方式.在此之前,一般使用 FTP 或 Telnet 来 ...
- Flask 学习之flask入门
一.Flask的简单介绍 Flask是一个基于Python开发并且依赖jinja2模板和Werkzeug WSGI服务的一个微型框架,对于Werkzeug本质是Socket服务端,其用于接收http请 ...
- vscode解决java无法输入(scanner)问题
vscode解决java无法输入问题 需要先安装java环境,->windows安装java 新建Test.java 输入代码 import java.util.Scanner; public ...
- MyBatis XML常用配置
1.属性(properties) 可外部配置且可动态替换的,既可以在典型的 Java 属性文件中配置,亦可通过 properties 元素的子元素来传递. 可以外部定义好properties文件通过 ...