如何通过命令行精确操作创建一个全新的数据库实例?

更新于
2026-08-11 09:22:49
2阅读来源:SEO资讯
  • 内容介绍
  • 文章标签
  • 相关推荐

一、为何很多人在命令行创建数据库时会卡住?

在实际工作中。开发者和 DBA 常常面临以下痛点:

  • 语法不统一不同数据库的 CREATE 语句差异大,容易混淆。
  • 权限不足没有足够的使用者权限,输入命令会报错。
  • 连接方式不明确不清楚如何通过命令行客户端登录目标服务器。
  • 创建后无法验证缺少快速检查数据库是否成功创建的手段。
  • 缺少一步到位的示例文档往往只给出碎片化命令,导致操作步骤不完整。
如何通过命令行精确操作创建一个全新的数据库实例?

二、通用操作流程

  1. 准备工作这方面,确认已安装对应客户端并获取登录凭证

  2. 使用命令行工具连接到目标服务器

  3. 以具备 CREATE DATABASE 权限的使用者执行创建语句

  4. 立即查询或列出库列表验证创建是否成功

  5. 如有需要。授予其他使用者相应权限并退出会话

三、各主流数据库的具体实现步骤

1. PostgreSQL

  1. 登录客户端:
  2. # psql -U <用户名> -h <主机IP> -p <端口>
    Password: ********
    
  3. 创建数据库:
  4. # CREATE DATABASE new_database_name;
  5. 验证:
  6. # \l -- 列出所有数据库
    # \c new_database_name -- 切换到新库进行进一步操作
    
  7. 常见坑点与方法:
    • 若提示 permission denied for database postgres请切换到超级管理员(如 postgres) 再执行。
    • 默认字符集为 UTF8,如需自定义可加参数:CREATE DATABASE dbname ENCODING 'LATIN1'; 其实,

2. MySQL / MariaDB

  1. 登录客户端:
  2. # mysql -u root -p
    Enter password: ********
    
  3. 创建数据库:
  4. # CREATE DATABASE `new_database_name` CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
  5. 授予权限:
  6. # GRANT ALL PRIVILEGES ON `new_database_name`.* TO 'app_user'@'%' IDENTIFIED BY 'StrongPass!',# FLUSH PRIVILEGES;
  7. 验证:
  8. # SHOW DATABASES LIKE 'new_database_name';+----------------------------+
    | Database |
    +----------------------------+
    | new_database_name |
    +----------------------------+
    1 row in set
    
  9. Pitfalls:
    • 忘记加反引号导致关键字冲突;是库名包含短横线或数字开头时必须使用反引号。
    • No database selected 错误说明当前未切换到任何库,可用 \u new_database_name;\c new_database_name; 切换。

3. Microsoft SQL Server

  1. 打开 sqlcmd 并连接:

如何通过命令行精确操作创建一个全新的数据库实例?
C:\> sqlcmd -S <服务器名称\实例> -U <用户名> -P <密码>
1>

  • 创建数据库:
     CREATE DATABASE;Command completed successfully.
    

  • 验证: SELECT name FROM sys.databases WHERE name = N'newdatabasename';
  • name

    newdatabasename

    GO

    html **注意**这方面。如果使用 Windows 身份认证,只需添加参数 `-E` 替代 `-U/-P`。

    4. Oracle

    ...

    标签:命令

    一、为何很多人在命令行创建数据库时会卡住?

    在实际工作中。开发者和 DBA 常常面临以下痛点:

    • 语法不统一不同数据库的 CREATE 语句差异大,容易混淆。
    • 权限不足没有足够的使用者权限,输入命令会报错。
    • 连接方式不明确不清楚如何通过命令行客户端登录目标服务器。
    • 创建后无法验证缺少快速检查数据库是否成功创建的手段。
    • 缺少一步到位的示例文档往往只给出碎片化命令,导致操作步骤不完整。
    如何通过命令行精确操作创建一个全新的数据库实例?

    二、通用操作流程

    1. 准备工作这方面,确认已安装对应客户端并获取登录凭证

    2. 使用命令行工具连接到目标服务器

    3. 以具备 CREATE DATABASE 权限的使用者执行创建语句

    4. 立即查询或列出库列表验证创建是否成功

    5. 如有需要。授予其他使用者相应权限并退出会话

    三、各主流数据库的具体实现步骤

    1. PostgreSQL

    1. 登录客户端:
    2. # psql -U <用户名> -h <主机IP> -p <端口>
      Password: ********
      
    3. 创建数据库:
    4. # CREATE DATABASE new_database_name;
    5. 验证:
    6. # \l -- 列出所有数据库
      # \c new_database_name -- 切换到新库进行进一步操作
      
    7. 常见坑点与方法:
      • 若提示 permission denied for database postgres请切换到超级管理员(如 postgres) 再执行。
      • 默认字符集为 UTF8,如需自定义可加参数:CREATE DATABASE dbname ENCODING 'LATIN1'; 其实,

    2. MySQL / MariaDB

    1. 登录客户端:
    2. # mysql -u root -p
      Enter password: ********
      
    3. 创建数据库:
    4. # CREATE DATABASE `new_database_name` CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
    5. 授予权限:
    6. # GRANT ALL PRIVILEGES ON `new_database_name`.* TO 'app_user'@'%' IDENTIFIED BY 'StrongPass!',# FLUSH PRIVILEGES;
    7. 验证:
    8. # SHOW DATABASES LIKE 'new_database_name';+----------------------------+
      | Database |
      +----------------------------+
      | new_database_name |
      +----------------------------+
      1 row in set
      
    9. Pitfalls:
      • 忘记加反引号导致关键字冲突;是库名包含短横线或数字开头时必须使用反引号。
      • No database selected 错误说明当前未切换到任何库,可用 \u new_database_name;\c new_database_name; 切换。

    3. Microsoft SQL Server

    1. 打开 sqlcmd 并连接:

    如何通过命令行精确操作创建一个全新的数据库实例?
    C:\> sqlcmd -S <服务器名称\实例> -U <用户名> -P <密码>
    1>
    

  • 创建数据库:
     CREATE DATABASE;Command completed successfully.
    

  • 验证: SELECT name FROM sys.databases WHERE name = N'newdatabasename';
  • name

    newdatabasename

    GO

    html **注意**这方面。如果使用 Windows 身份认证,只需添加参数 `-E` 替代 `-U/-P`。

    4. Oracle

    ...

    标签:命令