巨详细Linux安装MySQL

巨详细Linux安装MySQL

    • 1、查看是否有自带数据库或残留数据库信息
      • 1.1检查残留mysql
      • 1.2检查并删除残留mysql依赖
      • 1.3检查是否自带mariadb库
    • 2、下载所需MySQL版本,上传至系统指定位置
      • 2.1创建目录
      • 2.2下载MySQL压缩包
    • 3、安装MySQL
      • 3.1创建目录
      • 3.2解压mysql压缩包
      • 3.3安装解压出来的mysql包
    • 4、配置MySQL
      • 4.1设置开机自启动
      • 4.2修改mysql密码
      • 4.3更改数据库存放位置和日志输出位置

1、查看是否有自带数据库或残留数据库信息

mysql对安装环境要求比较苛刻,如果有相关残留信息处理起来会非常麻烦。所以需要对系统进行检查,之后在进行安装,各个发行版的linux系统存在差异,不过以下命令检查出的情况大体相同,按顺序操作即可。

1.1检查残留mysql

如果残留mysql组件,使用命令 rpm -e --nodeps +残留组件名 按顺序进行移除操作

powershell 复制代码
#检查系统是否残留过mysql
rpm -qa | grep mysql

1.2检查并删除残留mysql依赖

powershell 复制代码
#检查系统是否残留mysql依赖
yum remove mysql-libs -y

1.3检查是否自带mariadb库

如果存在mariadb的库,使用命令 rpm -e --nodeps +库名 按顺序将其卸载

powershell 复制代码
#检查是否自带mariadb库
rpm -qa | grep mariadb

2、下载所需MySQL版本,上传至系统指定位置

2.1创建目录

powershell 复制代码
#创建安装包存放目录
mkdir -p /data/install
#创建mysql软件安装目录
mkdir -p /data/local
#进入安装目录
cd /data/local

2.2下载MySQL压缩包

各版本mysql下载地址:https://downloads.mysql.com/archives/community/

本文采取mysql5.7版本作为演示,安装包传输工具使用Xftp,如何使用参考:https://blog.csdn.net/weixin_44953395/article/details/112900516

3、安装MySQL

3.1创建目录

powershell 复制代码
#创建mysql安装目录
mkdir -p /data/local/mysql5.7
#进入该目录
cd /data/local/mysql5.7

3.2解压mysql压缩包

powershell 复制代码
#解压MySQL的安装包,注意不要搞错安装包的名称
tar -xvf /data/install/mysql-5.7.25-1.el7.x86_64.rpm-bundle.tar.gz

3.3安装解压出来的mysql包

powershell 复制代码
#依次安装这几个解压出来的文件,注意看版本号
rpm -ivh mysql-community-common-5.7.25-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-5.7.25-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-5.7.25-1.el7.x86_64.rpm
rpm -ivh mysql-community-server-5.7.25-1.el7.x86_64.rpm

4、配置MySQL

4.1设置开机自启动

powershell 复制代码
#设置随系统启动
systemctl start mysqld
#查看状态
systemctl status mysqld
#开启mysql随系统启动规则
systemctl enable mysqld

4.2修改mysql密码

powershell 复制代码
#查看临时密码
grep 'temporary password' /var/log/mysqld.log
#用临时密码登录mysql,ri2NLigYB0+Q是我的临时密码
mysql -uroot -pri2NLigYB0+Q
#设定新密码规则
set global validate_password_policy=0;
set global validate_password_length=1;
#设定你的新密码
alter user root@localhost identified by '你的新密码';
#给root用户远程访问服务器的权限,方便navicat或其他图形工具连接
grant all privileges on *.* to 'root'@'%' identified by 'password' with grant option;
#刷新权限
flush privileges;
#退出mysql
exit
#使用修改后的密码再次登录mysql验证是否设置成功
mysql -uroot -p你的密码


4.3更改数据库存放位置和日志输出位置

powershell 复制代码
#创建数据库数据目录
mkdir -p /data/local/mysqldata 
#创建数据库日志目录
mkdir -p /data/local/mysqllog

#修改配置文件
单按"i"键进入编辑模式,页面左下角出现-- INSERT --后,将光标下移最底部并新增如下配置。
vi /etc/my.cnf
修改  datadir=/data/local/mysqldata 
log-error=/data/local/mysqllog/mysqld.log 
按 ESC 键退出编辑状态,输入:wq!保存并退出

#编辑完之后赋权限
chown -R mysql:mysql /data/local/mysqldata
chown -R mysql:mysql /data/local/mysqllog


相关推荐
艾莉丝努力练剑2 分钟前
【Python库和代码案例:第一课】Python 标准库与第三方库实战指南:从日期处理到 Excel 操作
java·服务器·开发语言·人工智能·python·pycharm·pip
huangyuchi.6 分钟前
【Linux网络】UDP协议详解:透过源码看透“面向数据报”与“缓冲区”的本质
linux·网络·udp·报文·linux网络·传输层协议·报头
林九生6 分钟前
【Centos7】CentOS 7 yum源失效解决方案:Could not resolve host mirrorlist.centos.org
linux·运维·centos
福尔摩斯张9 分钟前
【实战】C/C++ 实现 PC 热点(手动开启)+ 手机 UDP 自动发现 + TCP 通信全流程(超详细)
linux·c语言·c++·tcp/ip·算法·智能手机·udp
了一梨12 分钟前
网络编程:UDP Socket
linux·网络协议·udp
颜颜yan_13 分钟前
时序数据库性能较量:金仓数据库如何在高负载场景中领跑InfluxDB
数据库·时序数据库
北友舰长15 分钟前
基于Springboot+thymeleaf快递管理系统的设计与实现【Java毕业设计·安装调试·代码讲解】
java·spring boot·mysql·校园管理·快递·快递系统
xinxinhenmeihao16 分钟前
长效住宅静态IP有什么好处?是选择动态IP还是静态IP好?
服务器·网络·tcp/ip
ChristXlx20 分钟前
Linux安装MongoDB(虚拟机适用)
linux·mongodb·postgresql
yfs102420 分钟前
PostgreSQL 16 + pgvector 完整安装和内网访问指南(Ubuntu 20.04)
数据库·ubuntu·postgresql