Linux CentOS 7.6安装mysql5.7.26详细保姆级教程

一、通过wget下载mysql安装包

1、下载

java 复制代码
//进入home目录
cd /home  
//下载mysql压缩包
wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz
//解压
tar -xvf mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz
//重命名文件夹
mv mysql-5.7.26-linux-glibc2.12-x86_64 mysql-5.7.26


2、创建mysql用户组和用户并修改权限

java 复制代码
groupadd mysql
useradd -r -g mysql mysql

3、创建数据目录并赋予权限

java 复制代码
//进入解压目录
cd /home/mysql-5.7.26
//创建data文件夹
mkdir data
//授权
chown mysql:mysql -R /home/mysql-5.7.26/data

4、编辑/etc/my.cnf文件

java 复制代码
vi /etc/my.cnf

5、输入i将下面内容粘贴覆盖原有的my.cnf

java 复制代码
[mysqld]
socket=/tmp/mysql.sock
symbolic-links=0
server-id=2
port=3306
#最大连接数
max_connections=2000
#表大小写忽略
lower_case_table_names = 1
#安装目录
basedir=/home/mysql-5.7.26
#数据存放目录
datadir=/home/mysql-5.7.26/data
log_bin=mysql-bin
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION
max_allowed_packet = 1024M
[mysqld_safe]
#数据存放目录
log-error=/home/mysql-5.7.26/data/mysql.err
#数据存放目录
pid-file=/home/mysql-5.7.26/data/mysql.pid
!includedir/etc/my.cnf.d

6、安装初始化mysql

java 复制代码
//进入bin文件夹
cd /home/mysql-5.7.26/bin
//安装mysql
./mysqld --initialize --console

如果报错:./mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory

查看是否安装了libaio,如下图,未安装

java 复制代码
rpm -qa|grep libaio

使用命令yum install -y libaio进行安装

java 复制代码
yum install -y libaio

在执行./mysqld --initialize --console就不会报错了

初始化mysql后,一定要记住初始化随机密码:Ji7dz_gk9qG.

7、启动mysql服务

java 复制代码
//进入mysql.server服务目录下并启动服务
cd /home/mysql-5.7.26/support-files
./mysql.server start

如果第一次启动报以下错误

重新给mysql安装目录赋予一下权限后,再次执行

java 复制代码
//授权
chmod -R 777 /home/mysql-5.7.26
//重新启动
./mysql.server start

8、将mysql添加到系统进程中就可以使用服务进程操作mysql了

java 复制代码
cp /home/mysql-5.7.26/support-files/mysql.server /etc/init.d/mysqld

9、设置mysql自启动

java 复制代码
chmod +x /etc/init.d/mysqld
systemctl enable mysqld

10、修改root用户登录密码

java 复制代码
//进入bin文件
cd /home/mysql-5.7.26/bin/
//登陆mysql 执行后,输入我们初始化时记录下的随机密码,就会进入mysql
./mysql -u root -p

修改密码

java 复制代码
//123456是你需要修改的密码 后面的;不要忘记了奥
mysql> alter user 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';

11、设置允许远程登陆

java 复制代码
use mysql
update user set host = '%' where user = 'root';
//刷新权限
flush privileges;
//退出mysql
quit;

12、重启mysql服务并查看mysql服务状态

java 复制代码
systemctl restart mysql
systemctl status mysql

13、防火墙开启3306端口

java 复制代码
//--permanent为永久生效,没有此参数 服务器重启后配置失效
firewall-cmd --zone=public --add-port=3306/tcp --permanent
firewall-cmd --reload

最后使用Navicat测试连接安装成功

相关推荐
花酒锄作田29 分钟前
Postgres - Listen/Notify构建轻量级发布订阅系统
python·postgresql
Boop_wu39 分钟前
[Java 算法] 字符串
linux·运维·服务器·数据结构·算法·leetcode
Thomas.Sir1 小时前
第二章:LlamaIndex 的基本概念
人工智能·python·ai·llama·llamaindex
m0_694845571 小时前
Dify部署教程:从AI原型到生产系统的一站式方案
服务器·人工智能·python·数据分析·开源
SkyXZ~2 小时前
Jetson有Jtop,Linux有Htop,RDK也有Dtop!
linux·运维·服务器·rdkx5·rdks100·dtop
李昊哲小课3 小时前
Python办公自动化教程 - 第7章 综合实战案例 - 企业销售管理系统
开发语言·python·数据分析·excel·数据可视化·openpyxl
不知名的老吴3 小时前
返回None还是空集合?防御式编程的关键细节
开发语言·python
李昊哲小课3 小时前
Python办公自动化教程 - 第5章 图表创建 - 让数据可视化
python·信息可视化·数据分析·数据可视化·openpyxl
chushiyunen3 小时前
python pygame实现贪食蛇
开发语言·python·pygame
Dream of maid3 小时前
Python-基础2(流程控制)
python