Mysql yum安装mysql5.7
先来下载 mysql 的 yum 源,是一个 rpm 包的形式,官网的地址为:http://dev.mysql.com/downloads/repo/yum/
(1)下载mysql的yum源的rpm包
[root@master ~]# cd /usr/src/
[root@master src]# ls
debug kernels mysql57-community-release-el6-11.noarch.rpm
(2)安装yum源
[root@master src]#
yum localinstall mysql80-community-release-fc31-1.noarch.rpm-y --安装该rpm包,生成yum源
[root@master src]# cd /etc/yum.repos.d/
[root@master yum.repos.d]# ls--可以看到产生了很多mysql的repo文件
CentOS-Base.repo CentOS-Debuginfo.repo CentOS-fasttrack.repo CentOS-Media.repo CentOS-Vault.repo mysql-community.repo mysql-community-source.repo
(3)编辑mysql的yum源配置,指定要安装的版本
[root@master yum.repos.d]# vim mysql-community.repo --enable=1代表使用yum会下载5.7版本的mysql
[mysql57-community]
name=MySQL 5.7 Community Server
baseurl=http://repo.mysql.com/yum/mysql-5.7-community/el/6/$basearch/
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql
(4)使用yum来安装我们的mysql
[root@master yum.repos.d]# yum install mysql-community-server -y
(5)启动mysql和登入mysql终端
[root@master yum.repos.d]# service mysqld status
mysqld is stopped
[root@master yum.repos.d]# service mysqld start
Initializing MySQL database: [ OK ]
Starting mysqld: [ OK ]
启动完毕之后要登陆,登陆的密码在日志文件中。日志文件的位置在配置文件中指定。配置文件在/etc/my.cnf找到日志文件,一般是在/var/log/mysqld.log
查看这个文件的内容
[root@master etc]# cat /etc/my.cnf | grep log
log-error=/var/log/mysqld.log
[root@master ~]# more /var/log/mysqld.log--日志中可以找到登入密码
2020-03-23T05:28:38.210461Z 1 [Note] Atemporary password is generated for root@localhost: hY>i5(FQDCuW
[root@master etc]# mysql -uroot -p--输入该密码就可以登入到mysql了
Enter password: hY>i5(FQDCuW
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 3
Server version: 5.7.29
Copyright (c) 2000, 2020, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
(6)修改root密码
mysql> show databases;
ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.
输入以上语句,会提示:
ERROR 1819 (HY000): Your password does not satisfy the current policy requirement.
MySQL5.7 加强了安全保障,以上意思是密码不符合安全策略要求,我们输入一个8位或以上长度,复杂一点的密码,比如:
mysql> alter user 'root'@'localhost' identified by '#20as3SElksds0ew98';
Query OK, 0 rows affected (0.00 sec)
mysql> show variables like '%password%';--可以看到mysql的密码策略
+----------------------------------------+-----------------+
| Variable_name | Value |
+----------------------------------------+-----------------+
| validate_password_length | 8|
| validate_password_policy | MEDIUM|
+----------------------------------------+-----------------+
17 rows in set (0.01 sec)
在 mysql5.7 中对于密码的复杂度又有严格的限制,为了方便测试, 如果不希望这么麻烦,需要修改两个配置
validate_password_length:validate_password所需密码的最小字符数
validate_password_policy:密码策略,默认为MEDIUM策略,共有如下三种密码策略:
策略
检查规则
0 or LOW
Length
1 or MEDIUM
Length; numeric, lowercase/uppercase, and special characters
2 or STRONG
Length; numeric, lowercase/uppercase, and special characters; dictionary file
mysql> set global validate_password_policy=0;
Query OK, 0 rows affected (0.00 sec)
mysql> set global validate_password_length=1;
Query OK, 0 rows affected (0.00 sec)
mysql> alter user 'root'@'localhost' identified by 'root';
Query OK, 0 rows affected (0.01 sec)
(7)root用户远程登入
mysql> select user,host from mysql.user;--这个时候只能我们本地登录,远程使用 root 还是登陆不了的,
+---------------+-----------+
| user | host |
+---------------+-----------+
| mysql.session | localhost |
| mysql.sys | localhost |
| root | localhost |
+---------------+-----------+
3 rows in set (0.00 sec)
mysql> update mysql.user set host = '%' where user = 'root';--我们要把 localhost 变成%才能让其他机器登陆
Query OK, 1 row affected (0.00 sec)
Rows matched: 1 Changed: 1 Warnings: 0
mysql> select user,host from mysql.user;
+---------------+-----------+
| user | host |
+---------------+-----------+
| root | % |
| mysql.session | localhost |
| mysql.sys | localhost |
+---------------+-----------+
3 rows in set (0.00 sec)
这样, 在其他机器上就可以链接我们的 mysql 服务器了
版权声明
本文仅代表作者观点,不代表博信信息网立场。