前记
因为心血来潮,昨天在vmware上安装了centos8玩一玩,安装好了系统后。首先,要做的一件事就是安装mysql数据库,其中的过程记录一下(我的心酸血泪史)。
安装步骤
友情提醒:重中之重,注意按照下面的步骤来做,不然会踩更多的坑
1.下载mysql包
- 清除已有的mysql相关应用
- 安装mysql
- 启动mysql并修改密码
1. 下载mysql
下载MySQL直接选用清华镜像源
https://mirror.tuna.tsinghua.edu.cn/mysql/downloads/
我选用的是5.7的所以用下面这个连接
https://mirror.tuna.tsinghua.edu.cn/mysql/downloads/MySQL-5.7/mysql-5.7.31-1.sles12.x86_64.rpm-bundle.tar
centos 中下载mysql包
wget https://mirror.tuna.tsinghua.edu.cn/mysql/downloads/MySQL-5.7/mysql-5.7.31-1.sles12.x86_64.rpm-bundle.tar
此时我们就下好了所需要的包
2. 清除已有的mysql相关应用
检查是否有mysql相关的应用已经安装
#切换为root永华
su root
# 检查是否有mysql相关
rpm -qa | grep mysql
# 检查是否有mariadb相关
rpm -qa | grep mariadb
# 如果有就进行rpm的相关卸载(举例)
rpm -e --nodeps mysql-community-client-5.7.31-1.el7.x86_64
rpm -e --nodeps mysql-community-common-5.7.31-1.el7.x86_64
rpm -e --nodeps mysql-community-server-5.7.31-1.el7.x86_64
rpm -e --nodeps mysql-community-libs-5.7.31-1.el7.x86_64
3.安装mysql
解压先前下载的tar包
# 新建目录
mkdir mysql
# 解压文件到新建目录
tar xvf mysql-5.7.31-1.el7.x86_64.rpm-bundle.tar -C ./mysql
# 进入目录
cd mysql
# 按顺序安装包
rpm -ivh mysql-community-common-5.7.31-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-5.7.31-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-5.7.31-1.el7.x86_64.rpm
rpm -ivh mysql-community-server-5.7.31-1.el7.x86_64.rpm
注意:安装mysql-community-client-5.7.31-1.el7.x86_64.rpm 时可能会出错
error: Failed dependencies:
libncurses.so.5()(64bit) is needed by mysql-community-client-5.7.31-1.el7.x86_64
libtinfo.so.5()(64bit) is needed by mysql-community-client-5.7.31-1.el7.x86_64
缺少依赖,那么直接执行
dnf install ncurses-compat-libs
https://stackoverflow.com/questions/51698044/libncurses-so-5-cannot-open-shared-library-fedora 这个是问题解决的starkoverflow
ok, 包的安装到此结束
4. 启动mysql并修改密码
# 启动mysql
systemctl start mysqld
# 找到临时密码
cat /var/log/mysqld.log | grep password
# 出现下面的临时密码
2021-04-16T13:01:23.860264Z 1 [Note] A temporary password is generated for root@localhost: (hXshh2y5kbB
# 登录mysql
mysql -u root -p
# 输入临时密码
...
# 修改cnf文件
vim /etc/my.cnf
# 在cof添加一行 添加到 [mysqld] 标签下
validate_password=off
# 重启mysql
systemctl restart mysqld
# 登录并修改密码
alter user 'root'@'localhost' identified by 'yourpassword';