如何初始化mysql数据库_mysql初始配置流程

来源:这里教程网 时间:2026-02-28 20:49:01 作者:

MySQL 初始化数据库主要指首次安装后完成基础配置、创建初始用户、设置密码及安全选项的过程。核心是运行

mysqld --initialize
(或
mysqld --initialize-insecure
)生成数据目录和临时密码,再通过
mysql_secure_installation
加固系统。

初始化数据目录并生成临时密码

安装 MySQL 后,数据目录(如

/var/lib/mysql
或自定义路径)为空。需手动初始化:

确保 MySQL 服务未运行(
systemctl stop mysqld
brew services stop mysql
执行初始化命令:
Linux/macOS(推荐带密码):
mysqld --initialize --user=mysql --basedir=/usr --datadir=/var/lib/mysql

成功后终端会输出类似:
A temporary password is generated for root@localhost: aB3#xY9!qLm2
若需跳过初始密码(仅测试环境):
mysqld --initialize-insecure --user=mysql --datadir=/var/lib/mysql
(root 密码为空)

启动 MySQL 服务并首次登录

初始化完成后启动服务,用临时密码登录:

启动服务:
systemctl start mysqld
(Linux)或
brew services start mysql
(macOS)
登录:
mysql -u root -p
,输入初始化时生成的临时密码
首次登录后必须修改密码(5.7.6+ 版本强制要求):
ALTER USER 'root'@'localhost' IDENTIFIED BY 'YourNewPass123!';

运行安全脚本加固配置

mysql_secure_installation
是官方推荐的安全初始化工具,自动处理常见风险项:

执行命令:
mysql_secure_installation
按提示操作:输入当前 root 密码 → 是否更改密码(建议选 Y)→ 删除匿名用户 → 禁用远程 root 登录 → 删除 test 数据库 → 重载权限表 该脚本会修改
mysql.user
表、清理默认危险账户,并刷新权限,避免弱配置上线

验证与可选配置

完成上述步骤后建议快速验证并补充必要设置:

连接测试:
mysql -u root -p -e "SELECT VERSION(), USER();"
检查字符集(推荐统一为 utf8mb4):
/etc/my.cnf
/usr/local/etc/my.cnf
中添加:
[client]

default-character-set = utf8mb4

[mysqld]

character-set-server = utf8mb4

collation-server = utf8mb4_unicode_ci
重启服务使配置生效:
systemctl restart mysqld

相关推荐