如何在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

相关推荐

  • ATmel存储器芯片选型有何关键考量?

    Atmel存储器芯片作为嵌入式系统和物联网设备中的关键组件,凭借其高可靠性、低功耗和多样化的产品线,在工业控制、汽车电子、消费电子等领域得到了广泛应用,本文将从技术特点、产品分类、应用场景及未来趋势等方面,全面介绍Atmel存储器芯片的核心价值,技术特点与优势Atmel存储器芯片以技术创新为核心,具备多项显著优……

    2025年12月16日
    17800
  • 国内云服务器厂家有哪些?市场占有率如何?

    阿里云、腾讯云、华为云是主要厂家,阿里云市场占有率领先,腾讯云和华为云位列二三。

    2026年2月11日
    10300
  • cURL如何轻松搞定文件下载和API测试?

    基础用法获取网页内容curl https://www.example.com输出目标URL的HTML源码保存文件curl -O https://example.com/image.jpg # 保存为原始文件名curl -o custom_name.jpg https://example.com/image.jp……

    2025年7月4日
    19100
  • 安全可靠的ssl证书

    在数字化时代,网络已成为人们生活与工作的核心场景,从在线购物、金融交易到企业办公、数据传输,大量敏感信息在互联网上流动,开放的网络环境也伴随着数据泄露、身份盗用等安全风险,而安全可靠的SSL证书正是守护这些信息安全的“数字盾牌”,它不仅能够加密数据传输,还能验证网站身份,为用户和企业构建起可信的沟通桥梁,是现代……

    2025年11月15日
    15500
  • 国内BI平台,市场竞争激烈,未来发展走向何方?

    未来将向AI智能化、云原生及行业垂直化演进,注重业务场景深度融合与决策效率。

    2026年3月3日
    9600

发表回复

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

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信