跳到主要内容
极客日志极客日志面向AI+效率的开发者社区
首页博客我的书AI学习GitHub 精选镜像AI工具UI配色美学关于
搜索内容 / 工具 / 仓库 / 镜像...⌘K搜索
注册
博客列表
SQL

Ubuntu 24.04 安装与配置 MySQL 指南

在 Ubuntu 24.04 系统上安装和配置 MySQL 8.0 的完整流程。内容包括通过 apt 安装服务、检查版本与端口、安全加固、时区设置、用户权限管理以及开启远程连接。此外,还演示了如何导入 Sakila 示例数据库并进行基本的增删改查操作练习,适合 Linux 环境下数据库部署参考。

魔尊发布于 2026/3/24更新于 2026/10/25115 浏览

1. 安装 MySQL 服务

  • 使用 apt 自动安装 MySQL-8.0
sudo apt install mysql-server mysql-client
  • 安装完毕后检查版本和服务状态
mysql --version
systemctl status mysql
  • 检查端口是否正在监听
sudo ss -ltpn | grep 3306
  • 让 MySQL 服务随操作系统一起启动
sudo systemctl enable mysql
  • 安全加固
sudo mysql_secure_installation
  • 重新启动 MySQL 服务
sudo systemctl restart mysql

2. 登录与设置

  • 以 root 用户免密登录到 MySQL
sudo mysql -u root
  • 检查数据库实例
show databases;
  • 编码设置
show variables like '%colla%';
show variables like '%charac%';
  • 数据文件存放处
show variables like 'datadir';
  • 检查 MySQL 的时区与当前时间
SELECT @@global.time_zone, @@session.time_zone;
select now();
  • 调整时区设置(设置为中国时区)
timedatectl list-timezones
timedatectl set-timezone Asia/Chongqing

3. MySQL 功能验证

  • 创建数据库实例、新用户并授权
CREATE DATABASE testdb CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER 'testdbuser'@'localhost' IDENTIFIED WITH mysql_native_password BY 'TestDbPasswd1+';
GRANT ALL PRIVILEGES ON testdb.* TO 'testdbuser'@'localhost' WITH GRANT OPTION;
FLUSH PRIVILEGES;
EXIT;
  • 以新用户登录
mysql -u testdbuser -p
  • 创建表,插入数据
use testdb;
DROP TABLE IF EXISTS `t1`;
CREATE TABLE `t1` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `name` varchar(20) DEFAULT NULL,
  `code` varchar(50) DEFAULT NULL,
  PRIMARY KEY (`id`),
  KEY `idx_code` (`code`),
  KEY `idx_name` (`name`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4 COLLATE='utf8mb4_unicode_ci';
INSERT INTO t1 (`name`,`code`) VALUES('NameA','CodeA');
INSERT INTO t1 (`name`,`code`) VALUES('NameB','CodeB');
INSERT INTO t1 (`name`,`code`) VALUES('NameC','CodeC');
INSERT INTO t1 (`name`,`code`) VALUES('NameD','CodeD');
COMMIT;
  • 查询数据
SELECT * FROM t1;
  • 退出
EXIT;

4. MySQL 远程连接

  • 修改 MySQL 配置文件,允许远程连接
sudo vi /etc/mysql/mysql.conf.d/mysqld.cnf

将 bind-address 改为 0.0.0.0。

  • 重启 MySQL 服务生效
sudo systemctl restart mysql
  • 创建可远程访问的用户
CREATE USER 'remoteuser'@'%' IDENTIFIED WITH mysql_native_password BY 'RemotePasswd1+';
GRANT ALL PRIVILEGES ON testdb.* TO 'remoteuser'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;
EXIT;

5. Sakila 样例数据库

  • 创建文件夹并进入
mkdir sakila
cd sakila
  • 下载压缩包
wget https://downloads.mysql.com/docs/sakila-db.tar.gz
  • 解压缩
tar zxvf ./sakila-db.tar.gz
cd sakila-db
  • 导入到 MySQL 数据库
sudo mysql -u root source /home/hadoop/sakila/sakila-db/sakila-schema.sql source /home/hadoop/sakila/sakila-db/sakila-data.sql show databases;
  • 客户端连接权限配置
GRANT ALL PRIVILEGES ON sakila.* TO 'remoteuser'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;
EXIT;

6. 练习任务

  • 创建学生成绩表格并插入数据
mysql -h localhost -u testdbuser -p
show databases;
use testdb;
CREATE TABLE tb_student (
  `NAME` varchar(100) NOT NULL,
  `ENGLISH` FLOAT DEFAULT 0 NULL,
  `MATH` FLOAT DEFAULT 0 NULL,
  `COMPUTER` FLOAT DEFAULT 0 NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
INSERT INTO tb_student (NAME, ENGLISH, MATH, COMPUTER) VALUES ('zhangsan',69, 86, 77);
INSERT INTO tb_student (NAME, ENGLISH, MATH, COMPUTER) VALUES ('lisi', 55,100, 88);
SELECT * FROM tb_student;
SELECT NAME, COMPUTER FROM tb_student WHERE NAME='zhangsan';
UPDATE tb_student SET MATH=95 WHERE NAME='lisi';

目录

  1. 1. 安装 MySQL 服务
  2. 2. 登录与设置
  3. 3. MySQL 功能验证
  4. 4. MySQL 远程连接
  5. 5. Sakila 样例数据库
  6. 6. 练习任务

更多推荐文章

查看全部
  • VS Code GitGraph 插件使用指南
  • 机器人轨迹规划基础与常用方法
  • 渗透测试实战:获取并破解 Net-NTLMv2 哈希
  • AI 与 SQL 双驱 ER 图生成工具:功能、原理与应用
  • AI 临床副驾驶实战:基于 Go 的电子病历助手与 HIS 对接
  • DeepSeek-R1 大模型基于 MS-Swift 框架的部署、推理与微调实践
  • Python+AI 学习路线:从零基础到实战专家
  • 数据结构:双向链表详解与实现
  • 进阶数据结构:AVL 树
  • DeepSeek-R1-Distill-Llama-8B 本地部署与 Docker Compose 服务化
  • 亚马逊户外帐篷卖家真实吐槽:以前一张主图要等7天、烧3000块,现在用 Megick 5分钟出4K大片,月销量直接翻了2.8倍
  • OpenClaw 架构解析:实现从认知到行动的 AI 智能体
  • C++ 继承机制详解:从基础到多继承与组合
  • 动态规划经典题型:最小花费爬楼梯与解码方法
  • Python Google Search API 集成实战与无依赖方案
  • AIGC 在元宇宙中的应用与技术实现
  • 动态规划解斐波那契问题:三步、爬楼梯与解码方法
  • AI开发环境搭建:PyTorch/TensorFlow与电科金仓KES连接实战
  • Stable Diffusion 3.5 FP8 模型在消费级显卡上的部署与优化
  • Elasticsearch 与 Kibana 实战:安装部署及 C++ 客户端封装

相关免费在线工具

  • SQL 美化和格式化

    在线格式化和美化您的 SQL 查询(它支持各种 SQL 方言)。 在线工具,SQL 美化和格式化在线工具,online

  • SQL转CSV/JSON/XML

    解析 INSERT 等受限 SQL,导出为 CSV、JSON、XML、YAML、HTML 表格(见页内语法说明)。 在线工具,SQL转CSV/JSON/XML在线工具,online

  • CSV 工具包

    CSV 与 JSON/XML/HTML/TSV/SQL 等互转,单页多 Tab。 在线工具,CSV 工具包在线工具,online

  • Base64 字符串编码/解码

    将字符串编码和解码为其 Base64 格式表示形式即可。 在线工具,Base64 字符串编码/解码在线工具,online

  • Base64 文件转换器

    将字符串、文件或图像转换为其 Base64 表示形式。 在线工具,Base64 文件转换器在线工具,online

  • Markdown转HTML

    将 Markdown(GFM)转为 HTML 片段,浏览器内 marked 解析;与 HTML转Markdown 互为补充。 在线工具,Markdown转HTML在线工具,online