在 Debian 系统上配置 MySQL 数据库,通常包括 安装、初始化、安全配置、远程访问、用户与数据库管理 等步骤。下面以 Debian 11/12 + MySQL 8.x 为例,给你一套完整、常用的配置流程。
sudo apt update
sudo apt upgrade -y
sudo apt install mysql-server -y
安装完成后,MySQL 会自动启动。
sudo systemctl status mysql
常用命令:
sudo systemctl start mysql
sudo systemctl stop mysql
sudo systemctl restart mysql
sudo systemctl enable mysql
sudo mysql_secure_installation
按提示操作,通常包括:
validate_password 密码强度校验(建议启用)sudo mysql
如果已设置密码但仍无法登录:
mysql -u root -p
如果提示 Access denied,可能需要修改认证方式(见下文)。
sudo mysql
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'StrongPassword123!';
FLUSH PRIVILEGES;
EXIT;
mysql -u root -p
mysql -u root -p
CREATE DATABASE mydb CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER 'myuser'@'localhost' IDENTIFIED BY 'UserPassword123!';
GRANT ALL PRIVILEGES ON mydb.* TO 'myuser'@'localhost';
FLUSH PRIVILEGES;
⚠️ 生产环境请谨慎开启
sudo nano /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 'remoteuser'@'%' IDENTIFIED BY 'RemotePass123!';
GRANT ALL PRIVILEGES ON mydb.* TO 'remoteuser'@'%';
FLUSH PRIVILEGES;
sudo ufw allow 3306
查看当前字符集:
SHOW VARIABLES LIKE 'character_set%';
建议设置为 utf8mb4(支持 emoji):
[mysqld]
character-set-server = utf8mb4
collation-server = utf8mb4_unicode_ci
# 查看版本
mysql --version
# 查看数据库
SHOW DATABASES;
# 查看用户
SELECT user, host FROM mysql.user;
# 备份数据库
mysqldump -u root -p mydb > mydb.sql
# 恢复数据库
mysql -u root -p mydb < mydb.sql
可进入 安全模式重置密码(需要我可单独给你步骤)
auth_socket 登录这是正常行为,推荐用普通用户 + 密码方式管理数据库
sudo apt install mysql-server
sudo mysql_secure_installation
sudo mysql
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '密码';
FLUSH PRIVILEGES;
如果你告诉我:
我可以给你 更精确、更安全的配置方案 ✅