游乐游手机版
首页/数据库/文章详情

MySQL 创建数据库的三种方法:SQL命令、mysqladmin与PHP

时间:2026-08-31 11:49
本文详细介绍在 MySQL 中创建数据库的三种常用方法:使用 SQL 语句、mysqladmin 命令行工具以及 PHP 脚本。涵盖基础语法、字符集设置、权限管理及错误处理,帮助开发者快速掌握数据库初始化的核心技能。

本文详细介绍在 MySQL 中创建数据库的三种常用方法:使用 SQL 语句、mysqladmin 命令行工具以及 PHP 脚本。涵盖基础语法、字符集设置、权限管理及错误处理,帮助开发者快速掌握数据库初始化的核心技能。

创建数据库的最终效果预览

在开始操作之前,我们先明确创建数据库成功与失败时的典型界面表现。成功时,终端或脚本会返回确认信息;若数据库已存在且未处理异常,则会抛出错误提示。掌握这些反馈有助于快速排查问题。

操作前准备说明

在执行创建数据库操作前,请确保满足以下条件:

  • MySQL 服务运行中:确保 MySQL 服务器已启动并可访问。
  • 用户权限:执行创建操作的用户需拥有 CREATE 权限。通常 root 用户拥有最高权限,普通用户可能需要管理员授权。
  • 数据库命名规范:数据库名应遵循标识符命名规则,避免使用保留字,建议采用小写字母、数字和下划线组合。

方法一:使用 SQL 语句创建数据库

这是最常用且推荐的方式,通过 mysql 客户端执行 CREATE DATABASE 语句。该方法灵活,支持指定字符集和排序规则。

第1步:登录 MySQL 服务器

首先需要通过命令行登录到 MySQL 服务。使用 -u 指定用户名,-p 提示输入密码。

[root@host]# mysql -u root -p
Enter password:******

登录成功后,你将看到 mysql> 提示符,表示已进入 MySQL 交互终端。

第2步:执行 CREATE DATABASE 语句

mysql> 提示符下,输入创建数据库的基本语法。以下示例创建一个名为 RUNOOB 的数据库:

mysql> CREATE DATABASE RUNOOB;

执行成功后,数据库即被创建。此时可使用 SHOW DATABASES; 命令验证。

第3步:指定字符集与排序规则(可选)

为了支持多语言字符(如中文、Emoji等),建议显式指定字符集为 utf8mb4,并设置排序规则。这能避免后续数据插入时的乱码问题。

CREATE DATABASE mydatabase
  CHARACTER SET utf8mb4
  COLLATE utf8mb4_general_ci;

参数说明:

  • CHARACTER SET:定义数据库默认字符集,utf8mb4 是 UTF-8 的完整实现,支持所有 Unicode 字符。
  • COLLATE:定义字符排序规则,utf8mb4_general_ci 表示不区分大小写的通用排序。

第4步:处理数据库已存在的情况

如果尝试创建已存在的数据库,MySQL 会报错。为避免错误中断脚本执行,可使用 IF NOT EXISTS 子句:

CREATE DATABASE IF NOT EXISTS mydatabase;

该语句在数据库不存在时创建,存在时则静默跳过,不会报错。

方法二:使用 mysqladmin 命令行工具

mysqladmin 是 MySQL 提供的强大管理命令行工具,适合在服务器层面或脚本中执行管理任务,如创建数据库、重启服务等。

第5步:执行 mysqladmin 创建命令

无需登录 MySQL 交互界面,直接在系统终端执行以下命令:

[root@host]# mysqladmin -u root -p create RUNOOB
Enter password:******

参数解析:

  • -u root:指定登录用户为 root
  • -p:提示输入密码。
  • create:指定操作类型为创建数据库。
  • RUNOOB:目标数据库名称。

执行成功后,数据库 RUNOOB 即被创建。若指定字符集,可追加参数:

mysqladmin -u root -p create mydatabase \
  --default-character-set=utf8mb4 \
  --default-collation=utf8mb4_general_ci

方法三:使用 PHP 脚本创建数据库

在 Web 开发中,常通过 PHP 脚本动态创建数据库。PHP 使用 mysqli_query() 函数执行 SQL 语句。

第6步:建立数据库连接

首先使用 mysqli_connect() 连接到 MySQL 服务器。注意:创建数据库不需要先选择特定数据库,只需连接服务器本身。

';
?>

第7步:执行创建数据库查询

连接成功后,构造 CREATE DATABASE 语句并通过 mysqli_query() 执行:

$sql = 'CREATE DATABASE RUNOOB';
$retval = mysqli_query($conn, $sql);
if(! $retval ) {
    die('创建数据库失败: ' . mysqli_error($conn));
}
echo "数据库 RUNOOB 创建成功
"; mysqli_close($conn); ?>

函数说明:

  • mysqli_query(connection, query):执行 SQL 查询。对于 CREATEINSERT 等不返回结果集的操作,成功返回 TRUE,失败返回 FALSE
  • mysqli_error():获取最近一次操作的错误信息,用于调试。

结果验证与图片对照

执行上述 PHP 脚本后,根据数据库是否已存在,终端或浏览器会输出不同结果。请对照以下图片确认执行状态:

PHP脚本成功创建MySQL数据库后的终端输出,显示
图1:PHP 脚本成功创建数据库后的输出界面,显示“连接成功”及“数据库 RUNOOB 创建成功”。
PHP脚本尝试创建已存在数据库时的错误提示,显示
图2:尝试创建已存在数据库时的错误提示,显示“创建数据库失败”及具体 MySQL 错误信息。

常见问题与调整建议

问题1:权限不足导致创建失败

表现:执行命令后提示 Access denied for user...

原因:当前用户没有 CREATE 权限。

解决:使用 root 用户登录,或由管理员授予权限:
GRANT CREATE ON *.* TO 'username'@'host';

问题2:字符集设置不当导致乱码

表现:数据库创建成功,但插入中文数据时出现乱码或报错。

原因:未指定 utf8mb4 字符集,默认可能为 latin1

解决:创建数据库时显式指定 CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci

问题3:数据库名包含特殊字符或保留字

表现:语法错误 ERROR 1064

解决:避免使用保留字(如 order, select),若必须使用,请用反引号 `database_name` 包裹。

总结

本文涵盖了 MySQL 创建数据库的三种核心方式:SQL 语句、mysqladmin 命令行以及 PHP 脚本。关键点在于:

  • SQL 语句最灵活,支持字符集和排序规则的精确定义。
  • mysqladmin 适合服务器管理场景,无需进入交互界面。
  • PHP 脚本适用于 Web 应用动态初始化,需做好错误处理。

无论使用哪种方法,建议始终指定 utf8mb4 字符集以支持完整 Unicode,并确保执行用户拥有足够权限。以上就是 MySQL 创建数据库的详细内容,更多关于 MySQL 基础操作的资料请关注本站其它相关文章!

来源:https://www.runoob.com/mysql/mysql-create-database.html
上一篇MySQL 删除数据库的三种方法:SQL、命令行与 PHP 下一篇MySQL 连接教程:命令行与图形化工具实战指南
本站内容用于信息整理与展示,如有侵权或内容问题请及时联系处理。

相关推荐

补充同频道和同主题内容,方便继续浏览更多相关内容。

同类最新

继续查看同栏目最近更新的文章。

更多
Redis Hash 哈希散列:底层原理、存储结构与常用命令详解
数据库 · 2026-08-31

Redis Hash 哈希散列:底层原理、存储结构与常用命令详解

本文详解 Redis Hash 哈希散列的底层存储结构(ziplist 与 dict)、哈希冲突解决机制及常用命令操作。通过图解与实战示例,帮助开发者掌握 Hash 类型在对象存储场景中的高效应用与内存优化策略。

Redis Set 集合详解:底层原理、常用命令与实战示例
数据库 · 2026-08-31

Redis Set 集合详解:底层原理、常用命令与实战示例

本文系统讲解 Redis Set 集合的核心特性与底层存储机制,涵盖 intset 与哈希表的切换条件、结构体定义及内存优化策略。通过完整命令汇总与终端交互示例,帮助开发者掌握集合操作、交集 并集 差集计算及实际应用场景。

Redis连接命令详解:AUTH、PING、SELECT等命令使用指南
数据库 · 2026-08-31

Redis连接命令详解:AUTH、PING、SELECT等命令使用指南

本文详细解析Redis连接命令,包括AUTH、PING、SELECT、ECHO和QUIT等核心命令的语法、参数、返回值及常见错误处理。通过实操示例演示如何建立连接、验证密码、切换数据库及安全断开连接,帮助开发者快速掌握Redis客户端与服务端的交互机制。

Redis PubSub发布订阅模式详解:命令、流程与使用场景
数据库 · 2026-08-31

Redis PubSub发布订阅模式详解:命令、流程与使用场景

Redis PubSub(发布 订阅)是一种基于频道的消息多播机制,适用于实时通知与轻量级解耦场景。本文通过图解与终端交互示例,演示订阅、发布与接收的完整流程,汇总常用命令并说明模式匹配与状态查询方法,帮助开发者快速掌握其使用边界与注意事项。

Redis Stream消息队列:核心概念、命令与实战指南
数据库 · 2026-08-31

Redis Stream消息队列:核心概念、命令与实战指南

Redis 5 0引入的Stream数据类型提供了具备持久化与主从复制能力的消息队列功能。本文系统梳理Stream的核心架构、消息ID生成规则、消费组机制及ACK确认流程,并通过完整的CLI命令示例演示消息的发布、消费与状态管理,帮助开发者快速掌握Redis Stream的实战用法。