当前位置: 首页 > news >正文

CentOS8安装mysql8.0.24

一、下载mysql安装包并解压

执行以下命令:

# 创建mysql安装目录
mkdir /usr/local/mysql
# 进入mysql安装目录
cd /usr/local/mysql/
# 下载mysql-8.0.24
wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.24-linux-glibc2.12-x86_64.tar.xz
# 解压
tar -xvf mysql-8.0.24-linux-glibc2.12-x86_64.tar.xz
# 重命名解压出来的文件夹名
mv mysql-8.0.24-linux-glibc2.12-x86_64 mysql-8.0.24
# 创建数据存储目录
mkdir mysql-8.0.24/data

二、创建用户组和用户并授权

执行以下命令:

# 创建用户组
groupadd mysql
# 创建用户
useradd -g mysql mysql
# 授权用户
chown -R mysql.mysql /usr/local/mysql/mysql-8.0.24

三、初始化数据库

执行以下命令:

# 初始化数据库,不区分大小写--lower-case-table-names=1需在初始化时设置才生效
/usr/local/mysql/mysql-8.0.24/bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql/mysql-8.0.24 --datadir=/usr/local/mysql/mysql-8.0.24/data --lower-case-table-names=1

获取到初始化随机默认密码,之后第一次登陆时要用:

在这里插入图片描述

四、编写my.cnf配置文件

vim编辑/etc/my.cnf:

vim /etc/my.cnf

配置内容:

[mysqld]
# 设置3306端口
port=3306
# 设置mysql的安装目录
basedir=/usr/local/mysql/mysql-8.0.24
# 设置mysql数据库的数据的存放目录
datadir=/usr/local/mysql/mysql-8.0.24/data
# 允许最大连接数
max_connections=1000
# 允许连接失败的次数。这是为了防止有人从该主机试图攻击数据库系统
max_connect_errors=100
# 服务端使用的字符集默认为UTF8
character-set-server=utf8mb4
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
# 默认使用“mysql_native_password”插件认证
default_authentication_plugin=mysql_native_password
# 是否对sql语句大小写敏感,1表示不敏感
lower_case_table_names=1
# MySQL连接闲置超过一定时间后(单位:秒)将会被强行关闭
# MySQL默认的wait_timeout  值为8个小时, interactive_timeout参数需要同时配置才能生效
interactive_timeout=1800
wait_timeout=1800
# Metadata Lock最大时长(秒),一般用于控制alter操作的最大时长sine mysql5.6
# 执行 DML操作时除了增加innodb事务锁外还增加Metadata Lock,其他alter(DDL)session将阻塞
lock_wait_timeout=3600
# 内部内存临时表的最大值
# 比如大数据量的group by ,order by时可能用到临时表
# 超过了这个值将写入磁盘,系统IO压力增大
tmp_table_size=64M
max_heap_table_size=64M
[client]
# 设置mysql客户端连接服务端时默认使用的端口
port=3306
default-character-set=utf8mb4

五、配置成服务并开机自启

执行以下命令:

# 进入主目录
cd mysql-8.0.24/
# 添加mysqld服务到系统
cp -a ./support-files/mysql.server /etc/init.d/mysql
# 授权以及添加服务
chmod +x /etc/init.d/mysql
chkconfig --add mysql
# 检查是否生效
chkconfig --list mysql

出现下图所示内容说明配置生效:

在这里插入图片描述

六、配置环境变量

vim编辑/etc/profile:

vim /etc/profile

在/etc/profile中添加以下内容:

export MYSQL_HOME=/usr/local/mysql/mysql-8.0.24
export PATH=$PATH:$MYSQL_HOME/bin:$MYSQL_HOME/lib

刷新/etc/profile:

source /etc/profile

七、启动mysql服务

启动、停止、重启服务和查看服务状态命令:

# 启动服务
service mysql start
# 查看服务状态
service mysql status
# 停止服务
service mysql stop
# 重启服务
service mysql restart

执行启动命令,出现下图所示内容说明启动成功:
在这里插入图片描述

八、登录mysql

执行一下命令

mysql -u root -p

如果出现以下错误

在这里插入图片描述
执行以下命令安装ncurses-compat-libs:

dnf install ncurses-compat-libs

再次登录就能成功登陆了:

九、修改root用户密码

执行以下语句修改用户密码:

-- 修改root用户密码
-- ALTER USER '用户名'@'ip地址' IDENTIFIED WITH mysql_native_password BY '密码';
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'root';
-- 刷新权限
flush privileges;

在这里插入图片描述

十、设置外网连接授权

执行以下语句设置允许所有ip访问root用户:

-- 进入数据库mysql
use mysql;
-- 修改root用户host,%表示允许所有ip访问root用户
update user set host='%' where user='root';
-- 刷新权限
flush privileges;

防火墙没关的话需要关闭并禁止开机启动,否则远程连接mysql会失败:

systemctl stop firewalld && systemctl disable firewalld
http://www.lryc.cn/news/146457.html

相关文章:

  • Quasi-eccentricity Error Modeling and Compensation in Vision Metrology
  • ai智能电话机器人是人类的助手和朋友
  • 应用TortoiseSVN的SubWCRev管理VisualStudio C#项目编译版本号
  • 【八股】2023秋招八股复习笔记5(计算机网络-CN)
  • 【C++】SLT——Vector详解
  • 企业网络安全:威胁情报解决方案
  • 为什么2G、3G、4G成功了,5G却?
  • C语言每日一练------Day(10)
  • 发力服务业务,龙湖集团半程领跑赢在“智慧”
  • Kubernetes(七)修改 pod 网络(flannel 插件)
  • 测试平台metersphere
  • 论文笔记: One Fits All:Power General Time Series Analysis by Pretrained LM
  • 记录--怎么实现一个3d翻书效果
  • (数字图像处理MATLAB+Python)第十一章图像描述与分析-第一节、二节:图像描述概述和特征点
  • SSM框架的学习与应用(Spring + Spring MVC + MyBatis)-Java EE企业级应用开发学习记录(第五天)MyBatis的注解开发
  • VBA技术资料MF48:VBA_在Excel中将列号与字母转换
  • LeetCode-160. 相交链表
  • 微信小程序如何实现页面传参和页面传递多个参数
  • ChatGPT⼊门到精通(3):ChatGPT 原理
  • nginx配置keepalive长连接
  • Thread.enumerate方法
  • * 号靠近数据类型,和靠近变量名, 号靠近数据类型,和靠近变量名,有什么区别
  • 为了做好农业,拼多多请来顶尖农业专家当独立董事
  • Linux服务器安装部署MongoDB数据库 – 【无公网IP远程连接】
  • Python+PIL+qrcode实现二维码自由—普通二维码+彩色二维码+logo二维码+动态二维码(附完整代码)
  • 【Spring Data JPA】JPA 常用查询函数
  • Visual Studio 2022的MFC框架——AfxWinMain全局对象和InitInstance函数
  • 【网络】多路转接——poll | epoll
  • 音视频 ffmpeg命令视频录制(Windows)
  • 【拾枝杂谈】从游戏开发的角度来谈谈原神4.0更新