Ubuntu(④Mysql)

安装 MySQL 服务器

复制代码
sudo apt install mysql-server -y

在 Ubuntu 上用 sudo apt install mysql-server -y安装 MySQL 后,默认不会给 root 用户设置密码。你可以直接用 sudo mysql登录,然后自己为 root 设置密码

检查服务状态

复制代码
sudo systemctl status mysql

如果显示 active (running),说明 MySQL 已经在运行

设置开机自启

复制代码
sudo systemctl enable mysql

执行安全配置

复制代码
sudo mysql_secure_installation

设置 root 密码
删除匿名用户
禁止 root 远程登录
删除测试数据库
重新加载权限表

编辑配置文件:

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

找到这一行:

复制代码
bind-address = 127.0.0.1

把它注释掉或改成:

复制代码
bind-address = 0.0.0.0

保存退出后,重启 MySQL:

复制代码
sudo systemctl restart mysql

创造账号

复制代码
CREATE USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';

新建一个用户,用户名也是 root,但 Host 是 %。

% 表示允许从任意 IP 地址远程连接。

效果:你可以在 Windows Navicat 上用 root/123456 连接虚拟机的 MySQL。

复制代码
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;





=====================================================
ALL PRIVILEGES → 所有权限(增删改查、建库建表等)。
*.* → 所有数据库、所有表。
'root'@'%' → 用户 root,允许从任意 IP 登录。
WITH GRANT OPTION → 允许该用户把权限再授予别人。
FLUSH PRIVILEGES → 刷新权限表,让修改立即生效。

打开防火墙

复制代码
sudo ufw allow 3306/tcp
相关推荐
FoldWinCard5 小时前
D5 Linux 网络及端口命令
linux·运维·服务器
零涂毕业设计7 小时前
毕业设计模块开发-OLED显示屏(IIC协议0.96寸)STM32 ESP32 FPGA Linux驱动免费分享
linux·stm32·单片机·嵌入式·esp32·fpga·oled
tedcloud1237 小时前
OmniRoute怎么部署?开源AI模型路由平台Linux部署教程
linux·服务器·人工智能·开源·音视频
霸道流氓气质7 小时前
KMS 密钥管理服务(Key Management Service)原理与实践
linux·服务器·数据库
SakitamaX7 小时前
LVS(Linux Virtual Server)概念详解
linux·运维·lvs
小张同学a.7 小时前
Linux系统管理
linux·运维
阿龙的工作记录8 小时前
深入理解Linux设备驱动模型
linux·嵌入式硬件·工作记录
代码村新手8 小时前
Linux的基本指令
linux·运维·服务器
hkj88088 小时前
Ubuntu 切换java版本
java·linux·ubuntu
瞬间&永恒~9 小时前
【MySQL】4-6:在同一个主机上使用 systemd 运行多个 MySQL服务器
服务器·数据库·mysql