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. 参考链接


相关推荐
liyunlong-java2 小时前
单服务器 MySQL 主从同步部署教程(宝塔 + MySQL 8.0)
服务器·mysql·adb
lKWO OMET2 小时前
图文详述:MySQL的下载、安装、配置、使用
android·mysql·adb
苏苏码不动了2 小时前
adb/ADB 常见命令汇总
adb
bitt TRES2 小时前
CentOS7安装Mysql5.7(ARM64架构)
adb·架构
蜡台4 小时前
Ubuntu 24.04 系统版本 安装 MySQL 8 及相关配置
mysql·ubuntu·adb
NiKick15 小时前
MySql中的事务、MySql事务详解、MySql隔离级别
数据库·mysql·adb
ATCH IERV18 小时前
MySQL数据库误删恢复_mysql 数据 误删
数据库·mysql·adb
m0_7375393721 小时前
MYSQL源码安装和备份
数据库·mysql·adb
xxjj998a21 小时前
MySQL无法连接到本地localhost的解决办法2024.11.8
数据库·mysql·adb
历程里程碑1 天前
MySQL视图:虚拟表的实战技巧
java·开发语言·数据库·c++·sql·mysql·adb