ICode9

精准搜索请尝试: 精确搜索
首页 > 数据库> 文章详细

Ubuntu18.04服务器安装mysql,亲测有效

2021-12-19 11:59:02  阅读:163  来源: 互联网

标签:Ubuntu18.04 密码 mysql validate password root 输入 亲测


一、安装mysql:
    输入命令:sudo apt-get update
    
    输入命令:sudo apt-get install mysql-server
二、初始化配置:
    输入命令:sudo mysql_secure_installation

下面是执行命令后的内容:
#1
好像是下载一个东西用于密码测试吧
VALIDATE PASSWORD PLUGIN can be used to test passwords...
Press y|Y for Yes, any other key for No: N (我的选项)

#2
root账户设置密码
Please set the password for root here...
New password: (输入密码)
Re-enter new password: (重复输入)

#3
默认情况下,MySQL安装有一个匿名用户。
允许任何人登录MySQL,而不需要为他们创建一个用户帐户。
要删除匿名账号吗
By default, a MySQL installation has an anonymous user,
allowing anyone to log into MySQL without having to have
a user account created for them...
Remove anonymous users? (Press y|Y for Yes, any other key for No) : N (我的选项)

#4
通常情况下,只允许root从'localhost'连接。
这可以确保有人无法从网络上猜出根密码。
不允许远程登录根目录root
Normally, root should only be allowed to connect from
'localhost'. This ensures that someone cannot guess at
the root password from the network...
Disallow root login remotely? (Press y|Y for Yes, any other key for No) : Y (我的选项)

#5
默认情况下,MySQL有一个名为 "test "的数据库,任何人都可以访问。
删除测试数据库和对它的访问
By default, MySQL comes with a database named 'test' that
anyone can access...
Remove test database and access to it? (Press y|Y for Yes, any other key for No) : N (我的选项)

#6
重新加载权限表将确保到目前为止所有的改变
将立即生效。
现在重新加载权限表吗
Reloading the privilege tables will ensure that all changes
made so far will take effect immediately.
Reload privilege tables now? (Press y|Y for Yes, any other key for No) : Y (我的选项)


三、检查mysql服务状态
    
    输入命令:systemctl status mysql.service
    出现下面结果就选正常:
    

 

四、远程访问

    很多人都是这里出问题了:1、开放权限。2、创建新用户。3、修改配置文件

    用根用户进入mysql:sudo mysql -uroot -p

     1、让所有的主机都能连接本地的mysql,root好像不能被访问到,所以下面2中创建新用户。
    输入命令:GRANT ALL PRIVILEGES ON *.* TO root@localhost IDENTIFIED BY "123456";

     2、用root用户创建新的数据库和用户:
    创建数据库
    输入命令:create database dog;
    创建用户cx,密码87654321,并允许cx用户可以从任意机器上登入mysql
    输入命令:GRANT ALL PRIVILEGES ON dog.* TO cx@"%" IDENTIFIED BY "87654321";
    这里会出错:Your password does not satisfy the current policy requirements

    出现这个错误的原因是密码配置的问题:(如果想要创建别的用户的话,linux对于密码
    设置每次登录之后都要重新配置,总之只要报错就得重新配,我配了四遍,应该是配置
    好后不要急着重启数据库吧,要不白配置了)

    set global validate_password_policy=0;

    set global validate_password_mixed_case_count=0;

    set global validate_password_number_count=3;

    set global validate_password_special_char_count=0;

    set global validate_password_length=3;

    SHOW VARIABLES LIKE 'validate_password%';

    输入命令:SHOW VARIABLES LIKE 'validate_password%';
    就会出现:
+--------------------------------------+--------+
| Variable_name                        | Value  |
+--------------------------------------+--------+
| validate_password_check_user_name    | OFF    |
| validate_password_dictionary_file    |        |
| validate_password_length             | 3      |
| validate_password_mixed_case_count   | 0      |
| validate_password_number_count       | 3      |
| validate_password_policy             | LOW    |
| validate_password_special_char_count | 0      |
+--------------------------------------+--------+
    检查用户名字
    插件用于验证密码强度的字典文件路径
    密码最小长度,参数默认为8,
    密码至少要包含的小写字母个数和大写字母个数
    密码至少要包含的数字个数。
    密码强度检查等级,0/LOW、1/MEDIUM、2/STRONG。
    密码至少要包含的特殊字符数。

    在执行:GRANT ALL PRIVILEGES ON dog.* TO cx@"%" IDENTIFIED BY "87654321";

    最后改一下mysql配置文件:

     3、exit退出mysql系统
    输入命令:vim /etc/mysql/mysql.conf.d/mysqld.cnf
    找到bind-address的值修改为0.0.0.0


五、连接navicat

    

 这个应该是mysql重启造成的,密码的配置又复原了,重新配置一下cx账户下的密码试试:

 果然是这样:只要退出mysql密码就失效了,所以配置好之后赶紧连接。

这应该就不会出错了。


 

标签:Ubuntu18.04,密码,mysql,validate,password,root,输入,亲测
来源: https://blog.csdn.net/DaNongBao/article/details/122021944

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有