本文操作系统: CentOS 7.2.1511 x86_64
MySQL 版本: 5.7.13
从 MySQL 官网选取合适的 MySQL 版本,获取下载地址。
然后使用 wget 下载:
root@iZ2ze7rz0layh1h4ao1hcaZ ~]# wget http://repo.mysql.com//mysql57-community-release-el7-8.noarch.rpm
--2019-01-08 22:04:31-- http://repo.mysql.com//mysql57-community-release-el7-8.noarch.rpm
正在解析主机 repo.mysql.com (repo.mysql.com)... 23.50.239.110
正在连接 repo.mysql.com (repo.mysql.com)|23.50.239.110|:80... 已连接。
已发出 HTTP 请求,正在等待回应... 200 OK
长度:9116 (8.9K) [application/x-redhat-package-manager]
正在保存至: “mysql57-community-release-el7-8.noarch.rpm”
100%[======================================>] 9,116 --.-K/s 用时 0s
2019-01-08 22:04:31 (144 MB/s) - 已保存 “mysql57-community-release-el7-8.noarch.rpm” [9116/9116])
[root@iZ2ze7rz0layh1h4ao1hcaZ ~]# ls
mysql57-community-release-el7-8.noarch.rpm
[root@iZ2ze7rz0layh1h4ao1hcaZ ~]# yum -y install mysql57-community-release-el7-8.noarch.rpm
已加载插件:fastestmirror
正在检查 mysql57-community-release-el7-8.noarch.rpm: mysql57-community-release-el7-8.noarch
mysql57-community-release-el7-8.noarch.rpm 将被安装
正在解决依赖关系
--> 正在检查事务
---> 软件包 mysql57-community-release.noarch.0.el7-8 将被 安装
--> 解决依赖关系完成
依赖关系解决
================================================================================
Package 架构 版本 源 大小
================================================================================
正在安装:
mysql57-community-release
noarch el7-8 /mysql57-community-release-el7-8.noarch 8.2 k
事务概要
================================================================================
安装 1 软件包
总计:8.2 k
安装大小:8.2 k
Downloading packages:
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
正在安装 : mysql57-community-release-el7-8.noarch 1/1
验证中 : mysql57-community-release-el7-8.noarch 1/1
已安装:
mysql57-community-release.noarch 0:el7-8
完毕!
查看 mysql server
[root@iZ2ze7rz0layh1h4ao1hcaZ ~]# yum search mysql-com
已加载插件:fastestmirror
Loading mirror speeds from cached hostfile
mysql-connectors-community | 2.5 kB 00:00
mysql-tools-community | 2.5 kB 00:00
mysql57-community | 2.5 kB 00:00
(1/3): mysql-connectors-community/x86_64/primary_db | 29 kB 00:00
(2/3): mysql57-community/x86_64/primary_db | 162 kB 00:01
(3/3): mysql-tools-community/x86_64/primary_db | 48 kB 00:02
============================ N/S matched: mysql-com ============================
mysql-community-client.i686 : MySQL database client applications and tools
mysql-community-client.x86_64 : MySQL database client applications and tools
mysql-community-common.i686 : MySQL database common files for server and client
: libs
mysql-community-common.x86_64 : MySQL database common files for server and
: client libs
mysql-community-devel.i686 : Development header files and libraries for MySQL
: database client applications
mysql-community-devel.x86_64 : Development header files and libraries for MySQL
: database client applications
mysql-community-embedded.i686 : MySQL embedded library
mysql-community-embedded.x86_64 : MySQL embedded library
mysql-community-embedded-compat.i686 : MySQL embedded compat library
mysql-community-embedded-compat.x86_64 : MySQL embedded compat library
mysql-community-embedded-devel.i686 : Development header files and libraries for
: MySQL as an embeddable library
mysql-community-embedded-devel.x86_64 : Development header files and libraries
: for MySQL as an embeddable library
mysql-community-libs.i686 : Shared libraries for MySQL database client
: applications
mysql-community-libs.x86_64 : Shared libraries for MySQL database client
: applications
mysql-community-libs-compat.i686 : Shared compat libraries for MySQL 5.6.25
: database client applications
mysql-community-libs-compat.x86_64 : Shared compat libraries for MySQL 5.6.37
: database client applications
mysql-community-release.noarch : MySQL repository configuration for yum
mysql-community-server.x86_64 : A very fast and reliable SQL database server
mysql-community-test.x86_64 : Test suite for the MySQL database server
名称和简介匹配 only,使用“search all”试试。
安装,等待执行安装完成
[root@iZ2ze7rz0layh1h4ao1hcaZ ~]# yum -y install mysql-community-server.x86_64
已加载插件:fastestmirror
Loading mirror speeds from cached hostfile
正在解决依赖关系
--> 正在检查事务
---> 软件包 mysql-community-server.x86_64.0.5.7.24-1.el7 将被 安装
--> 正在处理依赖关系 mysql-community-common(x86-64) = 5.7.24-1.el7,它被软件包 mysql-community-server-5.7.24-1.el7.x86_64 需要
--> 正在处理依赖关系 mysql-community-client(x86-64) >= 5.7.9,它被软件包 mysql-community-server-5.7.24-1.el7.x86_64 需要
--> 正在处理依赖关系 libaio.so.1(LIBAIO_0.4)(64bit),它被软件包 mysql-community-server-5.7.24-1.el7.x86_64 需要
--> 正在处理依赖关系 libaio.so.1(LIBAIO_0.1)(64bit),它被软件包 mysql-community-server-5.7.24-1.el7.x86_64 需要
--> 正在处理依赖关系 libaio.so.1()(64bit),它被软件包 mysql-community-server-5.7.24-1.el7.x86_64 需要
--> 正在检查事务
---> 软件包 libaio.x86_64.0.0.3.109-13.el7 将被 安装
---> 软件包 mysql-community-client.x86_64.0.5.7.24-1.el7 将被 安装
--> 正在处理依赖关系 mysql-community-libs(x86-64) >= 5.7.9,它被软件包 mysql-community-client-5.7.24-1.el7.x86_64 需要
---> 软件包 mysql-community-common.x86_64.0.5.7.24-1.el7 将被 安装
--> 正在检查事务
---> 软件包 mariadb-libs.x86_64.1.5.5.60-1.el7_5 将被 取代
--> 正在处理依赖关系 libmysqlclient.so.18()(64bit),它被软件包 2:postfix-2.10.1-7.el7.x86_64 需要
--> 正在处理依赖关系 libmysqlclient.so.18(libmysqlclient_18)(64bit),它被软件包 2:postfix-2.10.1-7.el7.x86_64 需要
---> 软件包 mysql-community-libs.x86_64.0.5.7.24-1.el7 将被 舍弃
--> 正在检查事务
---> 软件包 mysql-community-libs-compat.x86_64.0.5.7.24-1.el7 将被 舍弃
--> 解决依赖关系完成
依赖关系解决
================================================================================
Package 架构 版本 源 大小
================================================================================
正在安装:
mysql-community-libs x86_64 5.7.24-1.el7 mysql57-community 2.2 M
替换 mariadb-libs.x86_64 1:5.5.60-1.el7_5
mysql-community-libs-compat x86_64 5.7.24-1.el7 mysql57-community 2.0 M
替换 mariadb-libs.x86_64 1:5.5.60-1.el7_5
mysql-community-server x86_64 5.7.24-1.el7 mysql57-community 165 M
为依赖而安装:
libaio x86_64 0.3.109-13.el7 base 24 k
mysql-community-client x86_64 5.7.24-1.el7 mysql57-community 24 M
mysql-community-common x86_64 5.7.24-1.el7 mysql57-community 274 k
事务概要
================================================================================
安装 3 软件包 (+3 依赖软件包)
总下载量:194 M
Downloading packages:
(1/6): libaio-0.3.109-13.el7.x86_64.rpm | 24 kB 00:00
warning: /var/cache/yum/x86_64/7/mysql57-community/packages/mysql-community-common-5.7.24-1.el7.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY
mysql-community-common-5.7.24-1.el7.x86_64.rpm 的公钥尚未安装
(2/6): mysql-community-common-5.7.24-1.el7.x86_64.rpm | 274 kB 00:02
(3/6): mysql-community-libs-5.7.24-1.el7.x86_64.rpm | 2.2 MB 00:00
(4/6): mysql-community-libs-compat-5.7.24-1.el7.x86_64.rpm | 2.0 MB 00:01
(5/6): mysql-community-client-5.7.24-1.el7.x86_64.rpm | 24 MB 00:15
(6/6): mysql-community-server-5.7.24-1.el7.x86_64.rpm | 165 MB 00:22
--------------------------------------------------------------------------------
总计 7.2 MB/s | 194 MB 00:27
从 file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql 检索密钥
导入 GPG key 0x5072E1F5:
用户ID : "MySQL Release Engineering "
指纹 : a4a9 4068 76fc bd3c 4567 70c8 8c71 8d3b 5072 e1f5
软件包 : mysql57-community-release-el7-8.noarch (installed)
来自 : /etc/pki/rpm-gpg/RPM-GPG-KEY-mysql
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
正在安装 : mysql-community-common-5.7.24-1.el7.x86_64 1/7
正在安装 : mysql-community-libs-5.7.24-1.el7.x86_64 2/7
正在安装 : mysql-community-client-5.7.24-1.el7.x86_64 3/7
正在安装 : libaio-0.3.109-13.el7.x86_64 4/7
正在安装 : mysql-community-server-5.7.24-1.el7.x86_64 5/7
正在安装 : mysql-community-libs-compat-5.7.24-1.el7.x86_64 6/7
正在删除 : 1:mariadb-libs-5.5.60-1.el7_5.x86_64 7/7
验证中 : mysql-community-server-5.7.24-1.el7.x86_64 1/7
验证中 : mysql-community-libs-compat-5.7.24-1.el7.x86_64 2/7
验证中 : mysql-community-libs-5.7.24-1.el7.x86_64 3/7
验证中 : mysql-community-common-5.7.24-1.el7.x86_64 4/7
验证中 : libaio-0.3.109-13.el7.x86_64 5/7
验证中 : mysql-community-client-5.7.24-1.el7.x86_64 6/7
验证中 : 1:mariadb-libs-5.5.60-1.el7_5.x86_64 7/7
已安装:
mysql-community-libs.x86_64 0:5.7.24-1.el7
mysql-community-libs-compat.x86_64 0:5.7.24-1.el7
mysql-community-server.x86_64 0:5.7.24-1.el7
作为依赖被安装:
libaio.x86_64 0:0.3.109-13.el7
mysql-community-client.x86_64 0:5.7.24-1.el7
mysql-community-common.x86_64 0:5.7.24-1.el7
替代:
mariadb-libs.x86_64 1:5.5.60-1.el7_5
完毕!
然后启动,注意 CentOS7 的启动方式和以前不一样,CentOS7 使用了 systemctl
[root@iZ2ze7rz0layh1h4ao1hcaZ ~]# systemctl start mysqld.service
查看启动是否成功
● mysqld.service - MySQL Server
Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: disabled)
Active: active (running) since 二 2019-01-08 22:08:10 CST; 17s ago
Docs: man:mysqld(8)
http://dev.mysql.com/doc/refman/en/using-systemd.html
Process: 20076 ExecStart=/usr/sbin/mysqld --daemonize --pid-file=/var/run/mysqld/mysqld.pid $MYSQLD_OPTS (code=exited, status=0/SUCCESS)
Process: 20003 ExecStartPre=/usr/bin/mysqld_pre_systemd (code=exited, status=0/SUCCESS)
Main PID: 20081 (mysqld)
CGroup: /system.slice/mysqld.service
└─20081 /usr/sbin/mysqld --daemonize --pid-file=/var/run/mysqld/my...
1月 08 22:08:05 iZ2ze7rz0layh1h4ao1hcaZ systemd[1]: Starting MySQL Server...
1月 08 22:08:10 iZ2ze7rz0layh1h4ao1hcaZ systemd[1]: Started MySQL Server.
上面显示 active (running) 则表示已经正常启动。
然后就可以进入数据库了,这里注意一点,MySQL5.7.6 之后会在启动 mysql 进程的时候生成一个用户密码,首次登陆需要这个密码才行。密码保存在 mysql 进程的日志里,即(/var/log/mysqld.log)
查看登陆密码
[root@iZ2ze7rz0layh1h4ao1hcaZ ~]# cat /var/log/mysqld.log | grep 'password'
2019-01-08T14:08:06.532936Z 1 [Note] A temporary password is generated for root@localhost: MKg%%)ef?1,*
然后登陆
[root@iZ2ze7rz0layh1h4ao1hcaZ ~]# mysql -uroot -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 3
Server version: 5.7.24 MySQL Community Server (GPL)
Copyright (c) 2000, 2018, 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.
mysql>
到这里 MySQL 就完全安装完成了。
首次安装成功之后需要更改密码,不然不能进行数据库操作
mysql> show databases;
ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.
以前的 password()函数将会被抛弃,官方建议使用下面的命令来修改密码
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password';
但这里需要注意一下,更改密码的可能会出现新密码不成功,会报错
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '123';
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
这是因为MySQL5.6.6版本之后增加了密码强度验证插件validate_password,相关参数设置的较为严格,这里我们注意设置密码 长度要大于8,同时要有数字,大小写,特殊字符,但是因为是自己用,想把密码设置的简单点,例如"12345678"(此处密码长度最少为8位),所以可以将验证级别降低
mysql> set global validate_password_policy=0;
Query OK, 0 rows affected (0.00 sec)
然后再执行
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '12345678';
最后,安装完了可以删除 MySQL 的 Repository ,这样可以减少 yum 检查更新的时间,使用下面的命令。
[root@iZ2ze7rz0layh1h4ao1hcaZ ~]# yum -y remove mysql57-community-release-el7-8.noarch.rpm