centos 7 安装mysql 转载
-
首先到官网站点下载mysql源码或源文件:
https://dev.mysql.com/downloads/mysql/
因为8.0版本是当前最新版本,如果用源码编译安装的话不确定是不是很稳定,官方也不是很推荐编译安装,所以我这里直接选择了用rpm安装:
我的系统是centos7 64位,所以我选择了
Red Hat Enterprise Linux/Oracle Linux系列
我下载了捆绑完整包:
mysql-8.0.11-1.el7.x86_64.rpm-bundle.tar
-
查询系统是否已经安装过mysql
因为我之前安装过一遍,所以rpm 查询到已安装包列表:
[root@jordy jordy]# rpm -qa | grep mysql
mysql-community-client-8.0.11-1.el7.x86_64
mysql-community-libs-8.0.11-1.el7.x86_64
mysql-community-common-8.0.11-1.el7.x86_64
mysql-community-server-8.0.11-1.el7.x86_64
-
卸载:
按一定顺序(因包之间有相互依赖)卸载即可:
rpm -e mysql-community-server-8.0.11-1.el7.x86_6
rpm -e mysql-community-client-8.0.11-1.el7.x86_64
rpm -e mysql-community-libs-8.0.11-1.el7.x86_64
rpm -e mysql-community-common-8.0.11-1.el7.x86_64
-
查看是否卸载成功:
用rpm -qa 查看,已经卸载完毕:
root@jordy jordy]# rpm -qa | grep mysql
[root@jordy jordy]#
-
然后我们正式开始安装:
cd /usr/local/src/mysql/mysql-8.0/rpm
[root@jordy rpm]# ll
total 1179692
-rw-r--r-- 1 root root 603985920 Apr 9 01:20 mysql-8.0.11-1.el7.x86_64.rpm-bundle.tar
-rw-r--r-- 1 7155 31415 26760484 Apr 9 01:06 mysql-community-client-8.0.11-1.el7.x86_64.rpm
-rw-r--r-- 1 7155 31415 549512 Apr 9 01:06 mysql-community-common-8.0.11-1.el7.x86_64.rpm
-rw-r--r-- 1 7155 31415 4221784 Apr 9 01:06 mysql-community-devel-8.0.11-1.el7.x86_64.rpm
-rw-r--r-- 1 7155 31415 24343708 Apr 9 01:06 mysql-community-embedded-compat-8.0.11-1.el7.x86_64.rpm
-rw-r--r-- 1 7155 31415 2349488 Apr 9 01:06 mysql-community-libs-8.0.11-1.el7.x86_64.rpm
-rw-r--r-- 1 7155 31415 2156516 Apr 9 01:06 mysql-community-libs-compat-8.0.11-1.el7.x86_64.rpm
-rw-r--r-- 1 7155 31415 119957152 Apr 9 01:06 mysql-community-minimal-debuginfo-8.0.11-1.el7.x86_64.rpm
-rw-r--r-- 1 7155 31415 357581528 Apr 9 01:07 mysql-community-server-8.0.11-1.el7.x86_64.rpm
-rw-r--r-- 1 7155 31415 20562556 Apr 9 01:07 mysql-community-server-minimal-8.0.11-1.el7.x86_64.rpm
-rw-r--r-- 1 7155 31415 45494324 Apr 9 01:07 mysql-community-test-8.0.11-1.el7.x86_64.rpm
开始安装每个部分:
[root@jordy rpm]# rpm -ivh mysql-community-common-8.0.11-1.el7.x86_64.rpm
warning: mysql-community-common-8.0.11-1.el7.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY
Preparing... ################################# [100%]
Updating / installing...
1:mysql-community-common-8.0.11-1.e################################# [100%]
[root@jordy rpm]# rpm -ivh mysql-community-libs-8.0.11-1.el7.x86_64.rpm
warning: mysql-community-libs-8.0.11-1.el7.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY
Preparing... ################################# [100%]
Updating / installing...
1:mysql-community-libs-8.0.11-1.el7################################# [100%]
[root@jordy rpm]# rpm -ivh mysql-community-libs-compat-8.0.11-1.el7.x86_64.rpm
warning: mysql-community-libs-compat-8.0.11-1.el7.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY
Preparing... ################################# [100%]
Updating / installing...
1:mysql-community-libs-compat-8.0.1################################# [100%
[root@jordy rpm]# rpm -ivh mysql-community-client-8.0.11-1.el7.x86_64.rpm
warning: mysql-community-client-8.0.11-1.el7.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY
Preparing... ################################# [100%]
Updating / installing...
1:mysql-community-client-8.0.11-1.e################################# [100%]
[root@jordy rpm]# rpm -ivh mysql-community-server-8.0.11-1.el7.x86_64.rpm
warning: mysql-community-server-8.0.11-1.el7.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY
Preparing... ################################# [100%]
Updating / installing...
1:mysql-community-server-8.0.11-1.e################################# [100%]
-
初始化
为mysql创建一个用户
groupadd mysql
useradd -r -g mysql -s /bin/false mysql
-
开始初始化:
[root@jordy mysql]# mysqld --initialize --user=mysql
2018-05-26T09:42:36.423053Z 0 [System] [MY-013169] [Server] /usr/sbin/mysqld (mysqld 8.0.11) initializing of server in progress as process 32607
2018-05-26T09:42:36.426303Z 0 [ERROR] [MY-010457] [Server] --initialize specified but the data directory has files in it. Aborting.
2018-05-26T09:42:36.426348Z 0 [ERROR] [MY-010119] [Server] Aborting
2018-05-26T09:42:36.426674Z 0 [System] [MY-010910] [Server] /usr/sbin/mysqld: Shutdown complete (mysqld 8.0.11) MySQL Community Server - GPL.
看到报错了,初始化出现abort错误,是因为之前卸载后对应的data目录并没有被清空,这个时候我们去my.cnf里查看下用rpm安装的mysql,默认的data目录的位置是哪里:
打开 vim /etc/my.cnf 看到:datadir=/var/lib/mysql
则证明数据目录的默认子目录是 /var/lib/mysql
直接删除:rm -rf /var/lib/mysql
然后重新初始化:
[root@jordy mysql]# mysqld --initialize --user=mysql
ok,没有任何报错,初始化完毕;
这个时候,mysql默认会在/var/log/mysqld.log 文件中记录日志,还会生成一个临时的默认密码,如:
2018-05-26T09:45:49.906507Z 5 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: fdx,U_lk*8oi
-
启动mysqld服务
[root@jordy mysql]# systemctl start mysqld.service
启动成功后,核对下是否正常:
[root@jordy mysql]# ps -ef | grep mysqld | grep -v grep
mysql 32694 1 2 17:49 ? 00:00:00 /usr/sbin/mysqld
[root@jordy mysql]#
ok
-
登录mysql(用刚才生成的临时密码:fdx,U_lk*8oi)
[root@jordy mysql]# mysql -u root -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 9
Server version: 8.0.11
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> alter user 'root'@'localhost' identified by '111111';
Query OK, 0 rows affected (0.03 sec)
然后查看系统默认的表:
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| sys |
+--------------------+
4 rows in set (0.01 sec)
退出:
mysql> quit;
Bye
修改下默认端口号:
vim /etc/my.cnf
找到 [mysqld] 增加port=2810
重启服务:
[root@jordy mysql]# systemctl restart mysqld.service
ok 到这里基本就安装完毕,关于mysql的配置文件以及详细的关键配置项的讲解和说明,大家可以在留言区留言,我会一一回复;除此,后续的专题如涉及到my.cnf中的关键配置项,也会顺便补充说明;