插件窝 干货文章 linux运行sql文件命令是什么

linux运行sql文件命令是什么

数据库 SQL 文件 MySQL 290    来源:    2025-05-01

在 Linux 系统中运行 SQL 文件通常需要结合数据库客户端工具。以下是针对不同数据库的常用命令:


1. MySQL/MariaDB

# 基本语法
mysql -u 用户名 -p 数据库名 < SQL文件路径

# 示例(回车后会提示输入密码)
mysql -u root -p mydatabase < /path/to/yourfile.sql

# 直接指定密码(不安全,仅测试环境)
mysql -u root -p密码 mydatabase < /path/to/yourfile.sql

# 指定主机和端口
mysql -h 主机名 -P 端口 -u 用户 -p 数据库名 < file.sql

2. PostgreSQL

# 基本语法
psql -U 用户名 -d 数据库名 -f SQL文件路径

# 示例
psql -U postgres -d mydb -f /path/to/yourfile.sql

# 指定主机和端口
psql -h 主机名 -p 端口 -U 用户 -d 数据库名 -f file.sql

3. SQLite

# 基本语法
sqlite3 数据库名.db < SQL文件路径

# 示例
sqlite3 mydb.db < /path/to/yourfile.sql

# 或通过交互式命令
sqlite3 mydb.db ".read /path/to/yourfile.sql"

4. Oracle

# 使用 SQL*Plus
sqlplus 用户名/密码@数据库实例 @/path/to/yourfile.sql

# 示例
sqlplus scott/tiger@ORCL @/path/to/script.sql

5. 通用技巧

  • 查看执行过程:添加 -v 参数(如 mysql -vpsql -e)。
  • 输出日志:重定向结果到文件。 bash mysql -u root -p mydb < file.sql > output.log 2>&1
  • 大文件处理:对于超大 SQL 文件,建议拆分或用 source 命令(MySQL 交互式模式下)。

注意事项

  1. 确保数据库服务已启动。
  2. 文件路径需有读取权限。
  3. SQL 文件编码建议为 UTF-8(避免乱码)。
  4. 生产环境避免在命令行直接暴露密码。

根据你的数据库类型选择对应命令即可。遇到具体错误时,可提供报错信息进一步分析。