CenterOS 7 安装 MySQL

一、安装Mysql

1、查看是否安装Mysql

[root@node-41 local]# rpm -qa | grep mysql

2、如果安装了Mariadb,可删除

yum remove mysql

3、下载Mysql的repo源

[root@node-41 local]# wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm

4、安装Mysql的yum源

[root@node-41 local]# yum -y install mysql57-community-release-el7-10.noarch.rpm

5、检查Mysql源是否存在

[root@node-41 local]# yum list mysql-community-server

Loaded plugins: fastestmirror Loading mirror speeds from cached hostfile

base: mirrors.aliyun.com

extras: mirrors.aliyun.com

updates: mirrors.aliyun.com Available Packages mysql-community-server.x8664 5.7.23-1.el7 mysql57-community

6、安装Mysql服务:

[root@node-41 local]# yum -y install mysql-community-server

Installed:
  mysql-community-libs.x86_64 0:5.7.23-1.el7            mysql-community-libs-compat.x86_64 0:5.7.23-1.el7            mysql-community-server.x86_64 0:5.7.23-1.el7           

Dependency Installed:
  mysql-community-client.x86_64 0:5.7.23-1.el7  mysql-community-common.x86_64 0:5.7.23-1.el7  perl.x86_64 4:5.16.3-292.el7         perl-Carp.noarch 0:1.26-244.el7          
  perl-Encode.x86_64 0:2.51-7.el7               perl-Exporter.noarch 0:5.68-3.el7             perl-File-Path.noarch 0:2.09-2.el7   perl-File-Temp.noarch 0:0.23.01-3.el7    
  perl-Filter.x86_64 0:1.49-3.el7               perl-Getopt-Long.noarch 0:2.40-3.el7          perl-HTTP-Tiny.noarch 0:0.033-3.el7  perl-PathTools.x86_64 0:3.40-5.el7       
  perl-Pod-Escapes.noarch 1:1.04-292.el7        perl-Pod-Perldoc.noarch 0:3.20-4.el7          perl-Pod-Simple.noarch 1:3.28-4.el7  perl-Pod-Usage.noarch 0:1.63-3.el7       
  perl-Scalar-List-Utils.x86_64 0:1.27-248.el7  perl-Socket.x86_64 0:2.010-4.el7              perl-Storable.x86_64 0:2.45-3.el7    perl-Text-ParseWords.noarch 0:3.29-4.el7 
  perl-Time-HiRes.x86_64 4:1.9725-3.el7         perl-Time-Local.noarch 0:1.2300-2.el7         perl-constant.noarch 0:1.27-2.el7    perl-libs.x86_64 4:5.16.3-292.el7        
  perl-macros.x86_64 4:5.16.3-292.el7           perl-parent.noarch 1:0.225-244.el7            perl-podlators.noarch 0:2.5.1-3.el7  perl-threads.x86_64 0:1.87-4.el7         
  perl-threads-shared.x86_64 0:1.43-6.el7      

Replaced:
  mariadb-libs.x86_64 1:5.5.56-2.el7                                                                                                                                         

Complete!

二、安装成功,接着就是设置Mysql啦

1、启动Mysql服务

[root@node-41 local]# systemctl start mysqld

2、查看Mysql状态和设置开机启动

[root@node-41 local]# systemctl status mysqld

 mysqld.service - MySQL Server
   Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: disabled)
   Active: active (running) since Sun 2018-08-26 11:10:30 CST; 35s ago
     Docs: man:mysqld(8)
           http://dev.mysql.com/doc/refman/en/using-systemd.html
  Process: 1360 ExecStart=/usr/sbin/mysqld --daemonize --pid-file=/var/run/mysqld/mysqld.pid $MYSQLD_OPTS (code=exited, status=0/SUCCESS)
  Process: 1284 ExecStartPre=/usr/bin/mysqld_pre_systemd (code=exited, status=0/SUCCESS)
 Main PID: 1362 (mysqld)
   CGroup: /system.slice/mysqld.service
           └─1362 /usr/sbin/mysqld --daemonize --pid-file=/var/run/mysqld/mysqld.pid

Aug 26 11:10:26 node-41 systemd[1]: Starting MySQL Server...
Aug 26 11:10:30 node-41 systemd[1]: Started MySQL Server.

[root@node-41 local]# systemctl enable mysqld

3、看到上一步中的提示说明Mysql服务已经启动了,不过此时想要连接MySQL,还得找到root用户密码

[root@node-41 local]# grep "password" /var/log/mysqld.log
2018-08-26T03:10:27.284801Z 1 [Note] A temporary password is generated for root@localhost: 2fjy,9I!ls_Z

4、连接数据库

[root@node-41 local]# mysql -uroot -p
Enter password: “输入上一步中的密码”

5、修改密码,如果不修改,此次连接不能做任何事

5.1、设置一个符合要求的密码

mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'new password';

5.2、如果只是修改为一个简单的密码,会报以下错误:

mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '123';
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements

这个其实与validate_password_policy的值有关。

validate_password_policy有以下取值:

PolicyTests Performed
0 or LOWLength
1 or MEDIUMLength; numeric, lowercase/uppercase, and special characters
2 or STRONGLength; numeric, lowercase/uppercase, and special characters; dictionary file

默认是1,即MEDIUM,所以刚开始设置的密码必须符合长度,且必须含有数字,小写或大写字母,特殊字符。

有时候,只是为了自己测试,不想密码设置得那么复杂,譬如说,我只想设置root的密码为123456。

必须修改两个全局参数:

首先,修改validate_password_policy参数的值:

mysql> set global validate_password_policy=0;
Query OK, 0 rows affected (0.00 sec)

这样,判断密码的标准就基于密码的长度了。这个由validate_password_length参数来决定。

mysql> select @@validate_password_length;
+----------------------------+
| @@validate_password_length |
+----------------------------+
|                          8 |
+----------------------------+
1 row in set (0.00 sec)

validate_password_length参数默认为8,它有最小值的限制,最小值为:

validate_password_number_count
+ validate_password_special_char_count
+ (2 * validate_password_mixed_case_count)

其中,validate_password_number_count指定了密码中数据的长度,validate_password_special_char_count指定了密码中特殊字符的长度,validate_password_mixed_case_count指定了密码中大小字母的长度。

这些参数,默认值均为1,所以validate_password_length最小值为4,如果你显性指定validate_password_length的值小于4,尽管不会报错,但validate_password_length的值将设为4。如下所示:

mysql> select @@validate_password_length;
+----------------------------+
| @@validate_password_length |
+----------------------------+
|                          8 |
+----------------------------+
1 row in set (0.00 sec)

mysql> set global validate_password_length=1;
Query OK, 0 rows affected (0.00 sec)

mysql> select @@validate_password_length;
+----------------------------+
| @@validate_password_length |
+----------------------------+
|                          4 |
+----------------------------+
1 row in set (0.00 sec)

如果修改了validate_password_number_count,validate_password_special_char_count,validate_password_mixed_case_count中任何一个值,则validate_password_length将进行动态修改。

mysql> select @@validate_password_length;
+----------------------------+
| @@validate_password_length |
+----------------------------+
|                          4 |
+----------------------------+
1 row in set (0.00 sec)

mysql> select @@validate_password_mixed_case_count;
+--------------------------------------+
| @@validate_password_mixed_case_count |
+--------------------------------------+
|                                    1 |
+--------------------------------------+
1 row in set (0.00 sec)

mysql> set global validate_password_mixed_case_count=2;
Query OK, 0 rows affected (0.00 sec)

mysql> select @@validate_password_mixed_case_count;
+--------------------------------------+
| @@validate_password_mixed_case_count |
+--------------------------------------+
|                                    2 |
+--------------------------------------+
1 row in set (0.00 sec)

mysql> select @@validate_password_length;
+----------------------------+
| @@validate_password_length |
+----------------------------+
|                          6 |
+----------------------------+
1 row in set (0.00 sec)

当然,前提是validate_password插件必须已经安装,MySQL5.7是默认安装的。

那么如何验证validate_password插件是否安装呢?可通过查看以下参数,如果没有安装,则输出将为空。

mysql> SHOW VARIABLES LIKE 'validate_password%';
+--------------------------------------+-------+
| Variable_name                        | Value |
+--------------------------------------+-------+
| validate_password_check_user_name    | OFF   |
| validate_password_dictionary_file    |       |
| validate_password_length             | 6     |
| validate_password_mixed_case_count   | 2     |
| validate_password_number_count       | 1     |
| validate_password_policy             | LOW   |
| validate_password_special_char_count | 1     |
+--------------------------------------+-------+
7 rows in set (0.01 sec)

validate_password_length = validate_password_number_count + validate_password_special_char_count + (2 * validate_password_mixed_case_count)

5.3、完成上述的修改后,可设置简单密码为:

mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';
Query OK, 0 rows affected (0.00 sec)

6、  因为安装了Yum Repository,以后每次yum操作都会自动更新,需要把这个卸载掉:
[root@node-41 local]# yum -y remove mysql57-community-release-el7-10.noarch

此时才算真正的安装成功了。

 

转载于:https://my.oschina.net/u/3491962/blog/1934088

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值