Debian 12 安装&卸载 MySQL 8.4 教程
MySQL 8.4 安装指南
本指南将详细介绍如何在 Linux (Debian/Ubuntu) 上手动安装 MySQL 8.4,并进行基本配置。
1. 安装前准备
1.1 更新系统并安装必要依赖
在安装 MySQL 之前,先更新系统包并安装所需的库文件:
sudo apt update && sudo apt upgrade -y
sudo apt-get install -y libaio1 libnuma1 libncurses6
libaio1:异步 I/O 支持库,MySQL 运行所需。libnuma1:NUMA(非均匀内存访问)支持库,提高性能。libncurses6:终端用户界面支持库,MySQL 客户端使用。
2. 下载 MySQL 8.4
cd ~
wget https://dev.mysql.com/get/Downloads/MySQL-8.4/mysql-8.4.4-linux-glibc2.28-x86_64.tar.xz
该命令从 MySQL 官方站点下载 MySQL 8.4.4 二进制包。
3. 创建 MySQL 用户和用户组
为 MySQL 进程创建一个独立用户,确保安全性。
sudo groupadd mysql
sudo useradd -r -g mysql -s /bin/false mysql
groupadd mysql:创建mysql用户组。useradd -r -g mysql -s /bin/false mysql:创建mysql用户,-r选项创建系统用户,-s /bin/false使其无法直接登录。
4. 安装 MySQL
4.1 解压并移动到 /usr/local/
cd /usr/local
sudo tar xvf ~/mysql-8.4.4-linux-glibc2.28-x86_64.tar.xz
sudo mv mysql-8.4.4-linux-glibc2.28-x86_64 mysql
cd /usr/local/mysql
sudo mkdir mysql-files
sudo chmod 750 mysql-files
4.2 设置权限
sudo chown -R mysql:mysql /usr/local/mysql
此步骤确保 MySQL 目录归 mysql 用户所有,避免权限问题。
5. 配置环境变量
5.1 添加 MySQL 到系统路径
echo 'export PATH=$PATH:/usr/local/mysql/bin' | sudo tee -a /etc/profile
source /etc/profile
这样就可以在任何地方运行 mysql 命令。
6. 配置 MySQL 服务器
6.1 创建 my.cnf 配置文件
cd /etc
sudo touch my.cnf
sudo chown root:root my.cnf
sudo chmod 644 my.cnf
6.2 编辑 my.cnf
[mysqld]
datadir=/usr/local/mysql/data
socket=/tmp/mysql.sock
port=3306
log-error=/usr/local/mysql/data/mysql_error.log
user=mysql
secure_file_priv=/usr/local/mysql/mysql-files
local_infile=OFF
lower_case_table_names=1
datadir:数据存储路径。socket:MySQL 进程使用的 socket 文件。log-error:错误日志文件路径。lower_case_table_names=1:表名大小写不敏感(适用于 Windows 兼容性)。
7. 初始化 MySQL 数据目录
cd /usr/local/mysql
sudo bin/mysqld --defaults-file=/etc/my.cnf --initialize-insecure
--initialize-insecure:不生成默认 root 密码,允许手动设置。
8. 配置 MySQL systemd 服务
8.1 创建 systemd 服务文件
cd /usr/lib/systemd/system
sudo touch mysqld.service
sudo chmod 644 mysqld.service
8.2 编辑 mysqld.service
[Unit]
Description=MySQL Server
Documentation=man:mysqld(8)
Documentation=http://dev.mysql.com/doc/refman/en/using-systemd.html
After=network.target
After=syslog.target
[Install]
WantedBy=multi-user.target
[Service]
User=mysql
Group=mysql
# Have mysqld write its state to the systemd notify socket
Type=notify
# Disable service start and stop timeout logic of systemd for mysqld service.
TimeoutSec=0
# Start main service
ExecStart=/usr/local/mysql/bin/mysqld --defaults-file=/etc/my.cnf $MYSQLD_OPTS
# Use this to switch malloc implementation
EnvironmentFile=-/etc/sysconfig/mysql
# Sets open_files_limit
LimitNOFILE = 10000
Restart=on-failure
RestartPreventExitStatus=1
# Set environment variable MYSQLD_PARENT_PID. This is required for restart.
Environment=MYSQLD_PARENT_PID=1
PrivateTmp=false
8.3 重新加载 systemd 并启用服务
sudo systemctl daemon-reload
sudo systemctl enable mysqld.service
sudo systemctl start mysqld.service
sudo systemctl status mysqld.service
9. 设置 MySQL Root 用户密码
mysql -u root --skip-password
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';
此步骤确保 root 用户有密码,防止安全风险。
10. 验证 MySQL 运行状态
10.1 检查数据库列表
cd /usr/local/mysql
bin/mysqlshow -u root -p
10.2 查看 MySQL 版本
bin/mysqladmin -u root -p version
11. 创建远程登录用户(可选)
登录mysql
mysql -u root -p
创建远程用户
CREATE USER 'zjw'@'%' IDENTIFIED BY '123456';
这里创建了远程用户
zjw,密码都为123456
授权远程用户
GRANT ALL PRIVILEGES ON *.* TO 'zjw'@'%' WITH GRANT OPTION;
查看用户
select user,host,plugin from mysql.user;
刷新权限
FLUSH PRIVILEGES;
exit
12. 结论
至此,MySQL 8.4 已成功安装并运行。
MySQL 8.4 卸载步骤
1. 停止 MySQL 服务
sudo systemctl stop mysqld
sudo systemctl disable mysqld
2. 删除 systemd 配置
sudo rm -f /usr/lib/systemd/system/mysqld.service
sudo systemctl daemon-reload
3. 删除 MySQL 用户和用户组(可选)
如果不再需要 mysql 用户,可以删除它。
sudo userdel -r mysql
sudo groupdel mysql
4. 删除 MySQL 目录
sudo rm -rf /usr/local/mysql
5. 删除 MySQL 配置文件
sudo rm -f /etc/my.cnf
6. 删除环境变量
从 /etc/profile 移除 MySQL 相关的 PATH 设置。
sudo sed -i '/export PATH=\$PATH:\/usr\/local\/mysql\/bin/d' /etc/profile
使更改生效:
source /etc/profile
7. 清理 MySQL 依赖(可选)
如果安装过程中手动安装了 libaio1、libnuma1 等库,可以手动卸载它们(如果其他程序不依赖)。
sudo apt-get remove --purge libaio1 libnuma1 libncurses6 -y
sudo apt-get autoremove -y
8. 确保 MySQL 已完全卸载
which mysql # 确保找不到 mysql
mysql --version # 应该报错
9. 注销并重新登录(推荐)
为了确保所有环境变量更改生效,建议注销当前用户并重新登录。
Debian 12 安装&卸载 MySQL 8.4 教程的更多相关文章
- mysql进阶(十八)完全卸载mysql数据库图文教程
完全卸载mysql数据库图文教程 有时候MySQL不能完全卸载,这时候必须通过一些途径删除掉注册表和一些残余的文件,然后才能重新安装才可以成功! 方法/步骤 1.控制面板-->所有控制面板项-- ...
- windows下mysql 8.0.12安装步骤及基本使用教程
本文实例为大家分享了windows下mysql 8.0.12安装步骤及使用教程,供大家参考,具体内容如下 补充:mysql 已经更新到了 8.0.19,大致步骤和这个差不多,照着来就完事了. 我下载的 ...
- linux安装卸载MySQL以及密码设置+Hive测试
linux系统卸载MYSQL 1,先通过yum方式卸载mysql及相关组件 命令:yum remove mysql* 2.通过命令:rpm -qa|grep -i mysql 查找系统的有关于mysq ...
- ubuntu安装/卸载mysql
1.安装mysql root@openstack001:/tmp# apt-get install mysql-server Reading package lists... Done Buildin ...
- linux安装/卸载mysql
其实安装mysql差不多有10次了吧, 但是每次都有坑,各种百度,太麻烦了,所以这次把坑给记录下来,下次直接用. 1. 去官网下载mysql.这里可以使用wget下载.先去官方网站,找到mysql5. ...
- 【Linux】Debian 下安装 Apache,MySQL,PHP
首先,对你的源进行更新: $ sudo apt-get update 第一步--安装 Apache Apache 是一个开源软件,它目前运行在全球超过 50% 的服务器上,是 LAMP(Linux,A ...
- 树莓派3B+安装&卸载mysql
需求 在树莓派上 安装Mysql 服务,并开启远程访问 步骤 安装 mysql server 1 $ sudo apt-get install mysql-server 我以为中间会让我提示输入 数据 ...
- linux(Debian)下安装与MySql的安装、卸载、配置及使用
参考资料:http://www.cnblogs.com/xusir/p/3334217.html 以下是简要记录. 一.安装 安装:apt-get install mysql-server mysql ...
- LNMP一键安装包-CentOS/Ubuntu/Debian自动安装Nginx,MySQL,PHP
适用环境: 系统支持:CentOS.Ubuntu.Debian 内存要求:≥128M 安装了什么: 1.Nginx-1.2.1 2.MySQL 5.5.25 3.PHP 5.2.17或PHP 5.3. ...
- Linux安装卸载Mysql数据库
关于mysql数据库在Linux下的应用一直以来都是我认为比较棘手的,这次通过搭建Linux学习环境顺便研究和学习Mysql数据库在Linux下安装和卸载. 1.先来看看卸载吧,如下图所示: 以上的命 ...
随机推荐
- 五分钟搭建属于你的AI助手:Ollama+DeepSeek+AnythingLLM深度整合教程
作者简介 微信公众号:密码应用技术实战 博客园首页:https://www.cnblogs.com/informatics/ GitHub地址:https://github.com/warm3snow ...
- vim技巧:设置编码格式,批量注释(待续其他功能)
navicate导出的sql由于是win平台所有模式都是dos所以上传到服务器需要更改模式类型为unix :set ff 查看当前文本的模式类型,一般为dos,unixdos 代表windows转出类 ...
- jenkins的admin用户的初始密码路径
以下命令查看即可
- JAVA运算符及实例
JAVA语言支持以下运算符 优先级() 算数运算符:+,-,*,/,%,++,-- 实例1: package operator; public class Demo01 { public ...
- Codeforces Round 999 比赛记录
前情提要 这个菜鸡CF上了 \(\color{darkcyan}Specialist\),心情大好,正好赶上放假,决定打一场CF. 赛时记录 A 上来脑子抽了,吃了一发罚时.发现写错了一种情况,改过来 ...
- FANUC发那科机器人主板维修,故障问题检测
电容损坏引发的故障在电子设备中是特别高的,其中尤其以电解电容的损坏为常见 电容损坏表现为:1.容量变小:2.完全失去容量:3.漏电:4.短路. 电容在电路中所起的作用不同,引起的故障也各有特点.在发那 ...
- 2. 在Linux 当中安装 Nginx(13步) 下载&安装&启动(详细说明+附加详细截图说明)
2. 在Linux 当中安装 Nginx(13步) 下载&安装&启动(详细说明+附加详细截图说明) @ 目录 2. 在Linux 当中安装 Nginx(13步) 下载&安装&a ...
- JSON驱动的vue可视化表单设计器组件
form-create-designer 是基于 @form-create/element-ui 实现的表单设计器组件.可以通过拖拽的方式快速创建表单,轻松帮你搞定表单. 源码地址: Github | ...
- MyBatis与其使用方法讲解
ORM 在讲解Mybatis之前,我们需了解一个概念ORM(Object-Relational Mapping)对象关系映射,其是数据库与Java对象进行映射的一个技术.通过使用ORM,我们可以不用编 ...
- typora 标题未在大纲中显示解决方法
解决方法:切换到源代码模式(快捷键是Ctrl +/),用鼠标选择未与前文对齐的标题和内容,按Shift+Tab,将内容对齐之后,大纲就能够正常显示了.