MySQL在ubuntu下的安装

前言:

安装与卸载中,用户全部进行切换为root ,一旦安装,普通用户也是可以进行使用

初期联系mysql时不进行用户的管理,直接使用root 进行即可,尽快适应mysql语句,后面进行学了用户管理再考虑新建普通用户。(先把mysql尽快进行用起来)

一、卸载不要的环境

首先进行检查ubuntu 下是否正在运行存在 mysql 和 mariadb ,

bash 复制代码
ps axj | grep mysql
bash 复制代码
ps axj | grep mariadb

如果存在则进行卸载

想要进行卸载mysql 需要再root 权限下进行操作?

如果存在下面这种情况,证明系统中的mysql存在并且正在运行

bash 复制代码
/usr/sbin/mysqld

首先要进行将mysql 进行关闭,不存在则直接跳过这一步骤

bash 复制代码
systemctl stop mysqld

进行查看mysql存在的安装包

bash 复制代码
dpkg -l | grep mysql | awk '{print $2}'

然后进行卸载

bash 复制代码
dpkg -l | grep mysql | awk '{print $2}' | xargs sudo apt-get -y remove

二、添加 MySQL 官方的 APT 软件源

1.先进行查看系统的版本,方便进行下载到适配的mysql版本

bash 复制代码
cat /etc/os-release

2.访问APT软件源进行下载

下载地址 : https://dev.mysql.com/downloads/repo/apt/

直接点击Download 进行下载

安装完成后就能看到一个deb后缀的文件。

三、在ubuntu 系统下进行安装MySQL

1、准备工作:安装lrzsz工具包

首先执行su - 命令进行提升普通root 用户的权限

然后执行cd ~ 进行切换到根目录

bash 复制代码
su -
cd ~

最后进行安装 lrzsz 工具包

lrzsz:一个工具包,提供 rzsz 命令:

  • rzReceive ZMODEM):接收文件(常用于从客户端上传文件到服务器)。

  • szSend ZMODEM):发送文件(从服务器发送文件到客户端)。

bash 复制代码
apt install lrzsz

在进行安装的时候可能出现以下界面

哪些服务应该被立即重启以加载新库

界面上列出了多个系统服务(如 cron, ssh, systemd-journald, rsyslog, dbus 等),你可以选择要重启哪些服务,默认是勾选了推荐的服务。

按回车(<Ok>)继续,系统会自动重启你勾选的服务即可。

检验 lrzsz工具包是否安装成功

bash 复制代码
rz --help

出现下面这种情况代表工具包安装成功

到此准备工作已经完成。

2、安装MySQl

安装发布包

直接将我们之前进行下载的 mysql-apt-config_0.8.34-1_all.deb 文件进行拖拽到Xshell 界面,可以看到 mysql-apt-config_0.8.34-1_all.deb文件就已经放入了系统中。

到这里就可以直接执行安装命令了,注意文件名一定要正确

bash 复制代码
dpkg -i mysql-apt-config_0.8.34-1_all.deb

执行完安装命令后需要进行选择成下图的格式

这样就已经安装完成了。

从MySQL APT 源更新包信息,执行下面的命令

bash 复制代码
apt-get update

安装MySQL

执行安装命令

bash 复制代码
 apt-get install mysql-server

执行安装命令的过程中需要进行设置自己的密码

直接按照推荐的来即可。

到这里安装任务就已经完成了.

3、检查MySQL状态

active (running) 代表数据库已经启动。

四、配置MySQL开机自启

适合开启自启动的情况

  • 生产环境服务器

MySQL 作为关键服务(如网站数据库、应用后端存储),必须保证随时可用。如果 MySQL 不自动启动,服务器重启后,依赖它的应用(如 WordPress、Nextcloud、Web 应用等)将无法连接数据库,导致服务中断。

  • 长期运行的开发/测试环境

如果你在本地或远程服务器上运行 MySQL 供团队使用,手动启动会很麻烦。开机自启动可以避免每次重启后手动运行 sudo systemctl start mysql。

  • 依赖 MySQL 的其他服务

如果系统中有 cron 任务、监控工具、自动化脚本 依赖 MySQL,开机不自启可能导致这些任务失败。

可能不需要开机自启动的情况

  • 个人开发机(偶尔使用 MySQL)

如果你只是偶尔使用 MySQL(如本地开发测试),可以手动启动,节省系统资源。

bash 复制代码
sudo systemctl start mysql  # 启动
sudo systemctl stop mysql   # 停止
  • 安全或资源考虑

MySQL 默认会占用 内存 和 CPU,如果机器资源紧张(如低配 VPS),可以选择按需启动。某些安全策略可能要求 最小化开机服务,减少潜在攻击面。

  • Docker/Kubernetes 环境

在容器化部署时,通常由 Docker/K8s 管理 MySQL 生命周期,无需系统级自启动。

配置my.cnf 文件

MySQL默认是不支持中文的,所以说需要进行配置,将格式改成utf8 的格式即可。

注意:

MySQL 官方文档早已说明:

⚠️不要使用 utf8!

使用 utf8mb4 来代替 utf8 是推荐做法,已成为业内标准。

使用下面的命令进行更改配置文件

bash 复制代码
sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf

更改完成后在重新进行启动一下MySQL即可。

bash 复制代码
sudo systemctl restart mysql

五、登录MySQL

sql 复制代码
mysql -h ip地址 -P 端口号 -u root -p

想要进行退出MySQL的登陆

sql 复制代码
\q或quit