CentOS 8.2 安装 MySQL 5.7.39 详细步骤
检查系统是否自带MySQL
笔者说
检查系统中是否已经安装了 MySQL 或 MariaDB ,如果已经安装了,那就必须提前卸载掉它们,否则它们占用的端口号、服务名或是一些其他配置很可能会干扰到后续我们要安装的 MySQL 版本。
以前笔者就遇到过几次由这个情况引发的问题,要么是 MySQL 无法安装成功,要么是 MySQL 安装成功后输入正确密码却登录不进去。
rpm -qa | grep mysql
rpm -qa | grep mariadb
# 如果上方两条命令查询出了内容,就把查出的软件卸载掉
rpm -e --nodeps 软件名
安装依赖
笔者说
和在 Windows 系统中一样,Linux 系统中安装程序也需要准备好所需的运行库。
不确认安装好它们,那在安装 MySQL 时就会出现这样那样的依赖报错,像下面这段报错就是由于没有安装好libaio
库引起的。
/bin/mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory
yum -y install numactl
yum -y install libncurses*
yum -y install libaio
下载并上传安装包
可前往 官网 下载 MySQL Linux 安装包然后上传到服务器。
也可以直接在服务器内下载。
wget https://cdn.mysql.com/archives/mysql-5.7/mysql-5.7.39-linux-glibc2.12-x86_64.tar.gz
解压安装包
笔者说
除去一些固定的东西,一定要记得根据你实际的情况调整好目录位置或命名。
# 解压安装包到指定目录(如指定目录不存在则需要先提前用 mkdir 创建)
# 下方 /opt/disk 是服务器的一块数据盘挂载目录
tar -zxvf mysql-5.7.39-linux-glibc2.12-x86_64.tar.gz -C /opt/disk# 重命名目录
cd /opt/disk
mv mysql-5.7.39-linux-glibc2.12-x86_64 mysql# 创建 MySQL 数据存储目录
cd mysql
mkdir data
创建mysql用户组和mysql用户
# 创建 mysql 用户组
groupadd mysql# 创建 mysql 用户
useradd -r -g mysql mysql# 将 MySQL 安装目录授权给 mysql 用户组的 mysql 用户
chown -R mysql:mysql ./
创建配置文件
创建 my_default.cnf 配置文件。
vim /opt/disk/mysql/support-files/my_default.cnf
将下方内容插入到配置文件中,保存并退出编辑。
笔者说
下方的配置中,指定了 MySQL 安装目录、MySQL 数据存储目录、MySQL 服务占用端口、MySQL 默认字符集、MySQL 日志文件位置、MySQL 进程文件位置等。
一定记得根据你实际的情况调整好。
[mysqld]
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES basedir = /opt/disk/mysql
datadir = /opt/disk/mysql/data
port = 3306
socket = /tmp/mysql.sock
character-set-server=utf8log-error = /opt/disk/mysql/data/mysqld.log
pid-file = /opt/disk/mysql/data/mysqld.pid
拷贝一份配置文件到 /etc 目录下,命名为 my.cnf
。
cp support-files/my_default.cnf /etc/my.cnf
安装并启动MySQL服务
使用 mysqld
命令来安装 MySQL 服务,并指定好用户名、MySQL 安装目录、MySQL 数据存储目录。
bin/mysqld --initialize --user=mysql --basedir=/opt/disk/mysql/ --datadir=/opt/disk/mysql/data/
拷贝一份 MySQL 服务脚本到 /etc/init.d
目录下,命名为 mysql
。
cp support-files/mysql.server /etc/init.d/mysql
启动 MySQL 服务。
systemctl start mysql
配置 MySQL 开机自启动。
systemctl enable mysql
到此,MySQL 服务就安装完成了。但别着急,还需要做些配置才能真正用起来。
设置环境变量
笔者说
配置好环境变量,我们才能方便的在任何目录下使用 MySQL 的命令。
# 1、打开 profile 文件
vim /etc/profile# 2、在其中插入环境变量配置
MYSQL_HOME=/opt/disk/mysql
PATH=$MYSQL_HOME/bin:$PATH
export MYSQL_HOME PATH# 3、重新加载 profile 文件,使最新配置生效
source /etc/profile
登录并修改密码
第一次登录时,首先从日志文件中找到随机生成的密码。
cat /opt/disk/mysql/data/mysqld.log
在日志文件中找到类似于下方输出的位置,其中 8QE2NEqhB:ks
就是密码。
[Note] A temporary password is generated for root@localhost: 8QE2NEqhB:ks
登录到 MySQL 服务端。
笔者说
有些时候随机生成的密码包含特殊符号,例如:&
、/
、.
(你没看错,有时候最后有个.
可千万别当作是句子结尾。
这种密码你在登录的时候,记得用'
单引号给它引起来。
例如:mysql -uroot -p'7AB5CDadE&'
mysql -uroot -p刚才从日志中找到的随机密码
修改密码。
set password = password('新密码');
创建用户并授权
这一步就要根据你的实际个人需要来操作了。
grant all on *.* to root@'%' identified by '你的密码';
CentOS 8.2 安装 MySQL 5.7.39 详细步骤相关推荐
- mysql 5.6.14源码安装_CentOS 6.4下编译安装MySQL 5.6.14详细步骤
一:卸载旧版本 使用下面的命令检查是否安装有MySQL Server 复制代码代码如下: rpm -qa | grep mysql 有的话通过下面的命令来卸载掉 复制代码代码如下: rpm -e my ...
- Win10 下载并安装MySQL(压缩包)详细步骤
前言 由于初次安装MySQL,什么都不清楚,废了老大劲,才搞懂,才发现原来很简单.因此记录下来,也希望能帮到初次安装者. 如果安装失败过,在DOS命令执行下面的一句话 sc delete mysql ...
- Centos Linux 离线安装 MySQL 5.7、使用MySQL
Centos Linux 离线安装 MySQL 5.7.使用MySQL 视频教程链接:https://www.bilibili.com/video/BV1Nv4y1m7u4/ 1. MySQL 简介 ...
- mysql linux centos 安装_Linux centos 下在线安装mysql
1,查看是否有安装过mysql: #rpm -qa | grep mysql 如果无结果返回,说明没有安装Mysql,可以全新安装. 2,查看在线服务器提供的Mysql相关的安装包有哪些: #yum ...
- 阿里云 centos 6.9 安装 mysql 5.7
2019独角兽企业重金招聘Python工程师标准>>> Step1: 检测系统是否自带安装mysql yum list installed | grep mysql ...
- 20-100-040-安装-Centos 7.5 安装MYSQL
Centos 7.5 安装MYSQL Centos7通过yum安装最新MySQL 一:去官网查看最新安装包 https://dev.mysql.com/downloads/repo/yum/ 二:下载 ...
- CentOS 7下载安装MySQL 5.7以及连接虚拟机CentOS 7数据库教程
CentOS 7下载安装MySQL 5.7以及连接虚拟机CentOS 7数据库教程 文章目录 CentOS 7下载安装MySQL 5.7以及连接虚拟机CentOS 7数据库教程 创建一个mysql 文 ...
- CentOS 8.1安装MySQL 8.0详解
CentOS 8.1安装MySQL 8.0详解 引言 一.YUM在线安装 0.删除已安装的MySQL 1.添加MySQL Yum Repository 2.选择MySQL版本 3.安装MySQL 4. ...
- 在PK体系下的CentOS上编译安装 MySQL 5.7
本文主要介绍如何在 PK 体系下的 CentOS 上编译安装 MySQL 5.7,本文使用的操作系统环境为: CentOS 版本: # cat /etc/redhat-release CentOS L ...
最新文章
- 理解 CSS 布局和块级格式上下文
- leetcode - Container With Most Water
- 程序员找工作那些事(一)幸存者偏差
- 开源!2019CCF BDCI 乘用车销量预测 冠军方案
- iOS开发之解析XML数据
- php7 有参数类型,PHP7中的可空返回类型
- 赋能数据智慧,InfoBeat让业务跃动起来
- Golang string处理
- 西部数码虚拟服务器备案,虚拟主机备案才能使用吗
- 问题五十七:怎么用ray tracing画translational sweeping图形
- python数组拼接concat_【JavaScript】重写数组的concat()方法
- java子网掩码计算器_java 子网掩码计算
- 计算机工程好发论文么,计算机工程期刊发表论文有什么要求
- 用talib实现基于emv的简易量化投资策略
- 加拿大计算机工程研究生,加拿大电子与计算机工程研究生
- Python人工智能完整学习路线
- halcon算子中文对照
- 常用 APP URL Scheme
- 2018年个人所得税Excel计算公式
- Odb文件(Abaqus)数据结构的一些思考