如何用命令行操作不同数据库?

掌握数据库命令行操作是开发运维必备技能,不同数据库的连接工具和命令存在差异,需了解前提条件、具体操作命令及相关注意事项。

MySQL / MariaDB

前提条件

  • 已安装 MySQL 客户端(若未安装,Linux 用 sudo apt install mysql-client,Windows 需下载官方安装包)。
  • 知晓数据库的 用户名密码主机地址(本地为 localhost)和 端口号(默认 3306)。

连接命令

mysql -u [用户名] -p -h [主机地址] -P [端口号]
  • 示例:连接本地数据库(端口 3306,用户 root):
    mysql -u root -p
    • -p 会提示输入密码(安全推荐),也可直接写 -p密码(无空格,但密码暴露在历史记录中)。

常见问题

  • 权限错误:确保用户有远程访问权限(如 GRANT ALL ON *.* TO 'user'@'%')。
  • 连接拒绝:检查 MySQL 服务是否运行(systemctl status mysql),防火墙是否放行端口。

PostgreSQL

前提条件

  • 安装 PostgreSQL 客户端:Linux 用 sudo apt install postgresql-client,Windows 通过安装包或 pgAdmin 自带 psql
  • 准备连接信息:用户名数据库名主机地址(默认 localhost)、端口(默认 5432)。

连接命令

psql -U [用户名] -d [数据库名] -h [主机地址] -p [端口号]
  • 示例:连接本地 testdb 数据库(用户 postgres):
    psql -U postgres -d testdb

注意事项

  • 首次登录可能需配置 pg_hba.conf 文件,允许本地密码验证。
  • 若提示数据库不存在,先用 createdb 命令创建。

SQLite

前提条件

  • 安装 SQLite 工具:Linux 用 sudo apt install sqlite3,Windows 从 官网下载。
  • 知晓数据库文件路径(如 ./mydb.db)。

打开命令

sqlite3 [数据库文件路径]
  • 示例:打开当前目录下的 app.db 文件:
    sqlite3 app.db
  • 若文件不存在,SQLite 会自动创建。

常用操作

  • 查看表:.tables
  • 退出:.exit

MongoDB

前提条件

  • 安装 MongoDB Shell(mongosh):参考 官方安装指南。
  • 准备连接字符串(含用户名、密码、主机、端口)。

连接命令

mongosh "mongodb://[用户名]:[密码]@[主机地址]:[端口]/[数据库名]"
  • 示例:连接本地默认数据库(端口 27017):
    mongosh mongodb://localhost:27017

安全提示

  • 生产环境建议使用加密连接(mongodb+srv://)并启用身份验证。
  • 连接失败时检查 mongod 服务状态(systemctl status mongod)。

通用注意事项

  1. 安全操作
    • 避免在命令中明文密码(用 -p 交互输入)。
    • 敏感操作前备份数据(如 MySQL 用 mysqldump)。
  2. 环境变量
    • 可配置环境变量(如 PGPASSWORD)简化登录,但需防范安全风险。
  3. 权限管理
    • 最小权限原则:为命令行用户分配必要权限,避免使用 root

  • MySQL/MariaDBmysql -u user -p
  • PostgreSQLpsql -U user -d dbname
  • SQLitesqlite3 path/to/file.db
  • MongoDBmongosh mongodb://host:port

掌握命令行操作能提升数据库管理效率,但务必遵循安全规范,遇到问题时,查阅官方文档或社区支持是可靠途径。


引用说明: 参考以下权威来源以确保准确性:

  • MySQL 官方文档:https://dev.mysql.com/doc/
  • PostgreSQL 官方指南:https://www.postgresql.org/docs/
  • SQLite 命令行工具文档:https://sqlite.org/cli.html
  • MongoDB Shell 手册:https://www.mongodb.com/docs/mongodb-shell/
    技术细节均基于最新稳定版软件验证(截至2025年10月)。

原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/8212.html

(0)
酷番叔酷番叔
上一篇 2025年7月21日 10:52
下一篇 2025年7月21日 11:10

相关推荐

  • iPhone手机怎么打开命令行工具?

    在iPhone上直接运行类似Windows的CMD或Linux的终端命令行并不像在电脑上那样原生支持,因为iOS系统封闭性较强,主要面向普通用户而非开发者或高级用户,通过一些官方或第三方工具,仍可以实现部分命令行功能,具体方法根据需求不同可分为以下几类,以下是详细说明:通过iOS自带“快捷指令”应用模拟简单命令……

    2025年8月27日
    10500
  • 如何用AT指令实现短信提醒功能?

    At指令短信提醒是一种通过AT指令集控制调制解调器(Modem)实现短信收发与提醒功能的技术方案,广泛应用于物联网设备、工业控制、远程监控等领域,其核心优势在于标准化、兼容性强,能够通过简单的文本指令实现复杂的短信操作,为设备与用户之间的信息交互提供高效可靠的途径,At指令短信提醒的工作原理At指令(Atten……

    2025年12月13日
    3900
  • PATH不设置会怎样

    PATH是操作系统中的环境变量,用于指定可执行程序(如 .exe、.bat 或脚本)的搜索路径,当你在命令行输入一个命令(如 python 或 git)时,系统会按顺序在PATH列出的目录中查找匹配的程序,查看当前PATHWindows 系统打开命令提示符(CMD)或 PowerShell输入:echo %PA……

    2025年8月5日
    9000
  • 命令行出现>提示符如何返回i状态?

    在命令行操作中,遇到提示符变为“>”的情况并不少见,这通常意味着当前命令行环境处于某种特殊状态,可能是多行输入模式、交互式工具的子环境,或是命令未正确闭合等待补充,要“返回”正常的命令行提示符(如“$”“#”等),需先判断“>”的来源,再针对性处理,以下从常见场景出发,详细分析原因和解决方法,并提供……

    2025年8月26日
    9200
  • 安全技术防范如何筑牢安全防线?

    安全技术防范是现代社会安全体系的重要组成部分,它通过技术手段和管理措施相结合,预防和减少各类安全事件的发生,保障人员生命财产安全和公共秩序稳定,随着科技的不断进步,安全技术防范已从单一的监控设备发展为集智能分析、数据联动、应急响应于一体的综合性防控体系,在金融、交通、教育、社区等多个领域发挥着不可替代的作用,安……

    2025年11月25日
    5600

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信