MySQL5.7安装教程
MySQL 作为免费数据库,备受个人开发者追捧的同时也深受各大互联网厂商的青睐!小白最近在掘金平台上开始阅读关于MySQL原理上的知识,因此又又又重新安装MySQl。
环境
Linux版本:Centos 7
安装方式
Linux 平台不像 Windows平台有MySQL-Installer
仅点两下就安装好了,通常 MySQL 安装方式仅包括源码编译安装
,包管理器(Centos下的yum,Ubuntu下的apt)
,二进制压缩包+配置环境变量
三种安装方式。
由于并不是从MySQL源码开始研究,因此不必采用源码编译安装
方式,而二进制压缩包+配置环境变量
安装方式又过于复杂,因此此篇采用rpm
包管理软件安装方式。此外,RPM包可先下载至操作机然后上传至远端服务机,对于网络比较差的情况比yum
安装方式更具有优势。
安装方式: RPM
安装步骤
- 卸载Centos自带的
Mariadb
避免依赖问题#rpm -qa|grep mariadb mariadb-libs-5.5.44-2.el7.centos.x86_64 #rpm -e --nodeps mariadb-libs-5.5.44-2.el7.centos.x86_64 复制代码
- 下载RMP压缩包
wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.26-1.el7.x86_64.rpm-bundle.tar
- 解压
tar -xvf mysql-5.7.26-1.el7.x86_64.rpm-bundle.tar
- 依次安装各个RMP包
rpm -ivh mysql-community-common-5.7.26-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-5.7.26-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-5.7.26-1.el7.x86_64.rpm
rpm -ivh mysql-community-server-5.7.26-1.el7.x86_64.rpm
其中Server
模块安装会报如下错误:
warning: mysql-community-server-5.7.26-1.el7.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY
error: Failed dependencies:
mysql-community-common(x86-64) = 5.7.26-1.el7 is needed by mysql-community-server-5.7.26-1.el7.x86_64
复制代码
报错大致是由于缺少依赖numactl
导致的,Yum快速安装即可:
yum install numactl
复制代码
启动MySQL服务端与重设密码
Linux 平台安装过程并没有设置root
用户的密码,因此密码其实又MySQL自动生成且可以在/var/log/mysqld.log
日志中查询密码生成日志!
- 启动MySQL服务端
# service mysqld start Redirecting to /bin/systemctl start mysqld.service 复制代码
- 日志中查找生成的默认密码
# cat /var/log/mysqld.log | grep password 2021-07-31T06:55:29.766809Z 1 [Note] A temporary password is generated for root@localhost: EyK=*uyDQ4uc 复制代码
然鹅登录过程中十分玄学,每次密码均拼写错误:
# mysql -hlocalhost -uroot -p
Enter password:
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
复制代码
因此,采用修改配置文件方式,使得我们不输入密码链接上MySQL服务器然后修改密码:
- MySQL服务端配置文件
/etc/my.cnf
中添加skip-grant-tables
#MySQL服务端配置模块 [mysqld] skip-grant-tables 复制代码
- 重新启动MySQL服务端
service mysqld restart
- 连接MySQL服务端并修改密码
[root@Node-01 MySQL]# mysql -hlocalhost -uroot -p Enter password: Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 2 Server version: 5.7.35 MySQL Community Server (GPL) Copyright (c) 2000, 2021, Oracle and/or its affiliates. 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> flush privileges; Query OK, 0 rows affected (0.00 sec) mysql> set password for 'root'@'localhost'=password('密码'); Query OK, 0 rows affected, 1 warning (0.00 sec) 复制代码
- 还原配置文件并重启MySQL服务端
[root@Node-01 MySQL]# vim /etc/my.cnf [root@Node-01 MySQL]# service mysqld restart 复制代码
当各位遗忘MySQLroot
密码的时候也可以使用这种方式修改~
DBA是如何安装?
DBA基本都是采用二进制文件的安装方式,其主要原因是此方式比较通用,在Centos和Ubuntu上安装方式基本一致,因此便于迁移,关于这种方式就不记录了。
官方文档:使用通用二进制文件在 Unix/Linux 上安装 MySQL
本次分享就到这里, 无论分享人实现多少次,总还是没有官方文档写得详细!