如何在Unix/Linux进入不同数据库SQL命令行?

MySQL / MariaDB

  1. 安装客户端(如未安装)

    # Debian/Ubuntu
    sudo apt update && sudo apt install mysql-client
    # CentOS/RHEL
    sudo yum install mysql
  2. 连接数据库

    mysql -u 用户名 -p -h 主机地址 -P 端口
    • -u:用户名(如 root)
    • -p:提示输入密码(密码输入时不可见)
    • -h:数据库服务器IP(本地可省略)
    • -P:端口号(默认3306可省略)
      示例:

      mysql -u root -p  # 连接本地数据库
  3. 成功标志
    出现 mysql> 提示符,即可执行SQL命令(如 SHOW DATABASES;)。


PostgreSQL

  1. 安装客户端

    # Debian/Ubuntu
    sudo apt install postgresql-client
    # CentOS/RHEL
    sudo yum install postgresql
  2. 连接数据库

    psql -U 用户名 -d 数据库名 -h 主机地址 -p 端口
    • -U:用户名(默认用户 postgres)
    • -d:数据库名(默认连接同名库)
      示例:

      psql -U postgres -d testdb  # 连接本地testdb数据库
  3. 成功标志
    出现 数据库名=# 提示符(如 testdb=#)。


SQLite

  1. 安装SQLite

    # Debian/Ubuntu
    sudo apt install sqlite3
    # CentOS/RHEL
    sudo yum install sqlite
  2. 打开数据库文件

    sqlite3 数据库文件路径

    示例:

    sqlite3 /data/mydb.db  # 打开现有数据库
    sqlite3 newdb.db       # 新建并打开数据库
  3. 成功标志
    出现 sqlite> 提示符。


Oracle Database

  1. 安装客户端
    需下载Oracle Instant Client(官网链接)。

  2. 连接数据库

    sqlplus 用户名/密码@主机地址:端口/服务名

    示例:

    sqlplus scott/tiger@192.168.1.10:1521/ORCLCDB
  3. 成功标志
    出现 SQL> 提示符。


常见问题解决

  1. 连接被拒绝

    • 检查数据库服务是否运行:
      sudo systemctl status mysql    # MySQL
      sudo systemctl status postgresql # PostgreSQL
    • 确认防火墙开放端口(如3306、5432)。
  2. 命令未找到(Command not found)
    安装对应客户端(参考上文步骤)。

  3. 忘记密码

    • MySQL:
      编辑配置文件 /etc/mysql/my.cnf,在 [mysqld] 下添加:

      skip-grant-tables

      重启服务后无密码登录,执行 ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码';。

  4. 权限不足
    联系管理员授权:

    GRANT ALL PRIVILEGES ON *.* TO '用户名'@'主机';
    FLUSH PRIVILEGES;

安全注意事项

  1. 避免明文密码
    不要直接在命令中写密码(如 -p密码),使用 -p 交互输入。
  2. 使用SSH隧道
    远程连接时建议加密:

    ssh -L 63306:localhost:3306 user@remote-server
    mysql -u root -p -P 63306  # 通过隧道连接
  3. 最小权限原则
    日常操作避免使用 root 账户。

引用说明

  • MySQL官方文档:https://dev.mysql.com/doc/
  • PostgreSQL官方文档:https://www.postgresql.org/docs/
  • SQLite命令行工具:https://sqlite.org/cli.html
  • Oracle Instant Client:https://www.oracle.com/database/technologies/instant-client.html

提示:操作需管理员权限时,命令前加 sudo,生产环境修改配置前务必备份数据。

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

赞 (0)
酷番叔酷番叔
上一篇 2025年7月8日 22:47
下一篇 2025年7月8日 22:57

相关推荐

  • 国内BI平台解决方案,有哪些亮点和适用场景?

    亮点是本土化强、性价比高,适用于企业报表、自助分析及多行业数据决策。

    2026年3月3日
    14500
  • 华为VRRP配置命令如何详细配置?

    华为VRRP(虚拟路由冗余协议)是一种通过多台设备组成虚拟路由器,为终端提供网关冗余的协议,可有效避免单点故障,提升网络可靠性,在华为设备上配置VRRP需涉及接口IP配置、备份组创建、优先级设置、认证模式及抢占策略等步骤,以下为详细配置命令及说明,VRRP基础配置步骤接口IP配置首先需为接口配置真实IP地址,该……

    2025年8月25日
    43700
  • 建网购网站需要多少钱?搭建网站步骤有哪些?

    搭建网购网站的核心在于明确业务目标、选择适合的技术架构,并通过云服务保障稳定与扩展,成功的网购网站需同时兼顾用户体验、SEO优化与安全合规,以下从专业角度分层展开,选择建站方式:自建 vs 平台自建网站:完全掌控代码与数据,适合有技术团队或长期规划的企业,推荐使用开源系统如 WooCommerce(WordPr……

    2026年8月19日
    7500
  • ANSYS APDL E命令如何定义单元?

    E命令通过节点连接创建单元,节点输入顺序直接影响单元坐标系方向,是定义有限元模型的核心操作。

    2025年6月18日
    26900
  • 安全内核如何上手?实用指南与关键步骤

    安全内核是现代操作系统的核心组件,负责管理硬件资源、执行访问控制策略,并确保系统的稳定性和安全性,正确使用安全内核可以显著提升系统的防护能力,防止未授权访问和数据泄露,本文将详细介绍安全内核的使用方法,包括基本概念、配置步骤、最佳实践以及常见问题解决方案,安全内核的基本概念安全内核是操作系统中最受信任的部分,运……

    2025年11月29日
    19700

发表回复

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

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信