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
相关推荐
随风飘的云5 小时前
mysql的innodb引擎对可重复读做了那些优化,可以避免幻读
mysql
Johny_Zhao16 小时前
OpenClaw安装部署教程
linux·人工智能·ai·云计算·系统运维·openclaw
chlk1232 天前
Linux文件权限完全图解:读懂 ls -l 和 chmod 755 背后的秘密
linux·操作系统
舒一笑2 天前
Ubuntu系统安装CodeX出现问题
linux·后端
改一下配置文件2 天前
Ubuntu24.04安装NVIDIA驱动完整指南(含Secure Boot解决方案)
linux
深紫色的三北六号3 天前
Linux 服务器磁盘扩容与目录迁移:rsync + bind mount 实现服务无感迁移(无需修改配置)
linux·扩容·服务迁移
SudosuBash3 天前
[CS:APP 3e] 关于对 第 12 章 读/写者的一点思考和题解 (作业 12.19,12.20,12.21)
linux·并发·操作系统(os)
哈基咪怎么可能是AI3 天前
为什么我就想要「线性历史 + Signed Commits」GitHub 却把我当猴耍 🤬🎙️
linux·github
于眠牧北3 天前
MySQL的锁类型,表锁,行锁,MVCC中所使用的临键锁
mysql
十日十行4 天前
Linux和window共享文件夹
linux