MySQL / MariaDB
-
安装客户端(如未安装)
# Debian/Ubuntu sudo apt update && sudo apt install mysql-client # CentOS/RHEL sudo yum install mysql
-
连接数据库
mysql -u 用户名 -p -h 主机地址 -P 端口
-u
:用户名(如root
)-p
:提示输入密码(密码输入时不可见)-h
:数据库服务器IP(本地可省略)-P
:端口号(默认3306可省略)
示例:mysql -u root -p # 连接本地数据库
-
成功标志
出现mysql>
提示符,即可执行SQL命令(如SHOW DATABASES;
)。
PostgreSQL
-
安装客户端
# Debian/Ubuntu sudo apt install postgresql-client # CentOS/RHEL sudo yum install postgresql
-
连接数据库
psql -U 用户名 -d 数据库名 -h 主机地址 -p 端口
-U
:用户名(默认用户postgres
)-d
:数据库名(默认连接同名库)
示例:psql -U postgres -d testdb # 连接本地testdb数据库
-
成功标志
出现数据库名=#
提示符(如testdb=#
)。
SQLite
-
安装SQLite
# Debian/Ubuntu sudo apt install sqlite3 # CentOS/RHEL sudo yum install sqlite
-
打开数据库文件
sqlite3 数据库文件路径
示例:
sqlite3 /data/mydb.db # 打开现有数据库 sqlite3 newdb.db # 新建并打开数据库
-
成功标志
出现sqlite>
提示符。
Oracle Database
-
安装客户端
需下载Oracle Instant Client(官网链接)。 -
连接数据库
sqlplus 用户名/密码@主机地址:端口/服务名
示例:
sqlplus scott/tiger@192.168.1.10:1521/ORCLCDB
-
成功标志
出现SQL>
提示符。
常见问题解决
-
连接被拒绝
- 检查数据库服务是否运行:
sudo systemctl status mysql # MySQL sudo systemctl status postgresql # PostgreSQL
- 确认防火墙开放端口(如3306、5432)。
- 检查数据库服务是否运行:
-
命令未找到(Command not found)
安装对应客户端(参考上文步骤)。 -
忘记密码
- MySQL:
编辑配置文件/etc/mysql/my.cnf
,在[mysqld]
下添加:skip-grant-tables
重启服务后无密码登录,执行
ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码';
。
- MySQL:
-
权限不足
联系管理员授权:GRANT ALL PRIVILEGES ON *.* TO '用户名'@'主机'; FLUSH PRIVILEGES;
安全注意事项
- 避免明文密码
不要直接在命令中写密码(如-p密码
),使用-p
交互输入。 - 使用SSH隧道
远程连接时建议加密:ssh -L 63306:localhost:3306 user@remote-server mysql -u root -p -P 63306 # 通过隧道连接
- 最小权限原则
日常操作避免使用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