Linux环境Mysql部署

网上Mysql部署相关的博客虽然很多,但要么是系统有差异,要么MySQL版本不同,要么有些博客本身就有错误,导致每次部署都难免要浪费一些时间。所以想着记录下部署步骤与遇到的问题,提升工作效率。

部署环境:Linux版本是CentOS 7.7,Mysql版本是5.7.32,使用rpm方式部署


下载

通过RPM方式安装,需要先下载.rpm安装包。

进入Mysql官网下载页面。左边是最新版本,右边是历史版本,选择历史版本

image-20220125105223583

找到对应的版本,我这里选的是mysql 5.7.32,Linux 7,x86,64位

image-20220125105400098

下载四个.rpm文件,分别是:server, client, common, libs

image-20220125105515229

安装

清理mariadb

centos7会自带一个mariadb,需要先清理掉

检查

1
rpm -qa|grep mariadb

如果有则需要清理,参数-e表示卸载(erase)

1
rpm -e mariadb-libs-5.5.65-1.el7.x86_64

如果存在依赖关系,导致清理失败,需要加上--nodeps,表示忽略依赖关系

1
rpm -e --nodeps mariadb-libs-5.5.65-1.el7.x86_64

上传rpm包

先上传.rpm文件到服务器 /opt/mysql/ 目录

安装

依次安装四个文件,四步顺序不可乱,有依赖关系

所有操作都是rpm –ivh + .rpm包。其中

-i:安装;-v:查看更详细的安装信息;-h:显示安装进度

1
2
3
4
rpm -ivh mysql-community-common-5.7.32-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-5.7.32-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-5.7.32-1.el7.x86_64.rpm
rpm -ivh mysql-community-server-5.7.32-1.el7.x86_64.rpm --force --nodeps

出现以下信息表示已安装成功

image-20220125110803638

检查

最后检查下

1
rpm -qa | grep mysql

四个.rpm包都已安装完毕

image-20220815103905911

启动

启动Mysql

1
service mysqld start

问题1:启动失败

按步骤安装好后,启动失败,让执行 journalctl -xe

image-20220808152353775

执行后,显示缺少libaio.so.1

image-20220808152439375

原因是部分centos版本缺少libaio.so.1文件。我在CentOS 7.9 版本启动可以,CentOS 7.7版本不行。

检查是否存在

1
whereis libaio.so.1

没有则手动安装

1
yum install -y libaio

执行rpm -ev卸载依赖,删除mysql目录,重新安装一遍

配置

获取临时密码

Mysql服务起来后执行

1
grep 'temporary password' /var/log/mysqld.log

会出现

A temporary password is generated for root@localhost: %6HRN:)k<.Y2

其中 %6HRN:)k<.Y2 即为root用户临时密码

此时登录后不可操作,否则会报

1
2
mysql> show databases;
ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.

提示必须要先重置密码

修改密码

修改密码

1
alter user 'root'@'localhost' identified by 'xxxxxxxx';

如果失败了,试试这个(v5.6.51)

1
mysqladmin -uroot -p12345 password xxxxxxxx;

授权root远程访问

允许navicat等工具远程连接

1
grant all privileges on *.* to 'root'@'%' identified by '1qazXSW@';

刷新更改

1
flush privileges;
文章作者: SongGT
文章链接: http://www.songguangtao.xyz/2022/08/14/8.Mysql部署/
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 SongGuangtao's Blog
大哥大嫂[微信打赏]
过年好[支付宝打赏]