MySQL 8.0 安装与配置技术文档(Ubuntu22.04)

MySQL 8.0 安装与配置技术文档


目录
  1. 环境准备
  2. [下载 MySQL 安装包](#下载 MySQL 安装包)
  3. [检查是否已安装 MySQL](#检查是否已安装 MySQL)
  4. [彻底卸载 MySQL](#彻底卸载 MySQL)
  5. [安装 MySQL](#安装 MySQL)
  6. [配置 MySQL](#配置 MySQL)
  7. 创建用户并允许外网访问
  8. [修改 root 用户密码](#修改 root 用户密码)
  9. 参考链接

1. 环境准备

确保系统为 Ubuntu 22.04,并安装了以下基础工具:

bash 复制代码
sudo apt-get update
sudo apt-get install wget tar dpkg

2. 下载 MySQL 安装包

从官网获取安装包:

下载并解压:

bash 复制代码
wget https://cdn.mysql.com//Downloads/MySQL-8.0/mysql-server_8.0.40-1ubuntu22.04_amd64.deb-bundle.tar
mkdir -p ~/mysql-deb
tar -xvf mysql-server_8.0.40-1ubuntu22.04_amd64.deb-bundle.tar -C ~/mysql-deb
cd ~/mysql-deb

3. 检查是否已安装 MySQL

检查系统是否存在 MySQL:

bash 复制代码
dpkg -l | grep mysql
ps -ef | grep mysql
ls /etc/mysql
ls /var/lib/mysql

4. 彻底卸载 MySQL

如果已安装 MySQL,可以按以下步骤卸载:

  1. 停止 MySQL 服务:

    bash 复制代码
    sudo systemctl stop mysql
  2. 卸载所有相关包:

    bash 复制代码
    sudo dpkg --purge mysql-server mysql-client mysql-common mysql-community-server
    sudo apt-get autoremove --purge
  3. 清理残余文件:

    bash 复制代码
    sudo rm -rf /etc/mysql /var/lib/mysql /var/log/mysql /var/run/mysqld
  4. 再次确认卸载完成:

    bash 复制代码
    dpkg -l | grep mysql

5. 安装 MySQL

安装步骤:

bash 复制代码
sudo dpkg -i mysql-common_8.0.40-1ubuntu22.04_amd64.deb
sudo dpkg -i libmysqlclient21_8.0.40-1ubuntu22.04_amd64.deb
sudo dpkg -i libmysqlclient-dev_8.0.40-1ubuntu22.04_amd64.deb
sudo dpkg -i mysql-community-client-core_8.0.40-1ubuntu22.04_amd64.deb
sudo dpkg -i mysql-community-client_8.0.40-1ubuntu22.04_amd64.deb
sudo dpkg -i mysql-client_8.0.40-1ubuntu22.04_amd64.deb
sudo dpkg -i mysql-community-server-core_8.0.40-1ubuntu22.04_amd64.deb
sudo dpkg -i mysql-community-server_8.0.40-1ubuntu22.04_amd64.deb
sudo dpkg -i mysql-server_8.0.40-1ubuntu22.04_amd64.deb

6. 配置 MySQL

编辑 MySQL 配置文件:

bash 复制代码
sudo nano /etc/mysql/my.cnf

添加以下内容,优化网络连接:

ini 复制代码
[mysqld]
pid-file        = /var/run/mysqld/mysqld.pid
socket          = /var/run/mysqld/mysqld.sock
datadir         = /var/lib/mysql
log-error       = /var/log/mysql/error.log
skip-name-resolve

保存后重启 MySQL:

bash 复制代码
sudo systemctl restart mysql

7. 创建用户并允许外网访问

进入 MySQL 控制台:

bash 复制代码
mysql -u root -p

运行以下命令:

sql 复制代码
CREATE USER 'root'@'%' IDENTIFIED BY '123456';
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;

8. 修改 root 用户密码

在 MySQL 控制台中,运行以下命令:

sql 复制代码
ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码';
ALTER USER 'root'@'%' IDENTIFIED BY '新密码';
FLUSH PRIVILEGES;

如果忘记密码,可按以下步骤重置:

  1. 停止 MySQL:

    bash 复制代码
    sudo systemctl stop mysql
  2. 以跳过权限表模式启动:

    bash 复制代码
    sudo mysqld_safe --skip-grant-tables &
  3. 登录 MySQL:

    bash 复制代码
    mysql -u root
  4. 重置密码:

    sql 复制代码
    UPDATE mysql.user SET authentication_string = PASSWORD('新密码') WHERE User = 'root';
    FLUSH PRIVILEGES;
  5. 重启 MySQL:

    bash 复制代码
    sudo systemctl start mysql

9. 参考链接


相关推荐
hello_zzw2 天前
docker部署MySQL主从服务集群
mysql·adb·docker
技术小黑屋_2 天前
从零搭建 Android ADB MCP Server:让 AI 助手直接操控你的 Android 设备
android·adb
Albert Edison3 天前
【MySQL】数据类型
数据库·mysql·adb·oracle
遇见火星3 天前
MYSQL-物理备份(xtrabackup)使用指南
数据库·mysql·adb
huibin1478523693 天前
不能识别adb/usb口记录
android·adb
洋不写bug4 天前
数据库的创建,查看,修改,删除,字符集编码和校验操作
android·数据库·adb
disanleya4 天前
MySQL默认端口为何是3306?修改后如何管理?
数据库·mysql·adb
笨蛋少年派4 天前
Ubantu安装MySQL8.0
adb
独行soc5 天前
2025年渗透测试面试题总结-106(题目+回答)
网络·python·安全·web安全·adb·渗透测试·安全狮
撩得Android一次心动5 天前
Android adb 基础使用指南
android·adb