linux命令导入sql
linux命令导入sql详细介绍
在 Linux 中导入 SQL 文件到数据库(以 MySQL 和 PostgreSQL 为例),可通过以下命令实现:
一、MySQL 导入 SQL
bash
mysql 用户名 -p密码 数据库名 文件名.sql
mysql root mydatabase /path/to/backup.sql
- 按回车后输入密码(不在命令行明文显示)
- 若提示
ERROR 1049 (42000): Unknown database 'mydatabase',需先创建数据库:bashmysql root
二、PostgreSQL 导入 SQL
bash
psql 用户名 数据库名 文件名.sql 主机(默认 localhost)
your_password psql postgres mydb /path/to/script.sql
- 若数据库不存在,先创建:bash
createdb postgres mydb
三、通用注意事项
- 文件路径:确保 SQL 文件路径正确(支持绝对路径或相对路径)。
- 权限问题:
- 赋予文件读取权限:
chmod +r /path/to/backup.sql - 确保数据库用户有目标库的写入权限。
- 赋予文件读取权限:
- 大文件优化:
- MySQL 可添加参数
--max_allowed_packet=256M避免分包错误。 - PostgreSQL 建议用
\i命令在交互式终端导入(更友好的进度提示):bashpsql postgres mydb
- MySQL 可添加参数
四、错误排查
Access denied:检查用户名、密码、主机(如远程数据库需授权)。- SQL 语法错误:用
mysql -v或psql -v显示详细日志,定位 SQL 文件中的错误行。
根据数据库类型选择对应命令,通常 10 秒内可完成小文件导入,大文件建议在低峰期操作。