MySQL导入文件/数据库命令
时间:2020-01-09 10:42:43 来源:igfitidea点击:
在Linux或者UNIX等操作系统上,如何导入存储在mysqldump命令创建的.sql文件中的数据?
如何使用基于bash shell的命令行选项还原mysql数据库备份?
mysqldump命令行客户端是一个备份程序,可用于转储数据库(备份数据库)或者数据库集合以进行备份或者传输到另一台SQL服务器。
转储通常包含用于创建表,填充表或者两者的SQL语句。
mysqldump的常见用法是对整个数据库进行备份:
mysqldump db_name > backup-db_name.sql mysqldump -u userNameHere db_name > backup-db_name.sql mysqldump -u userNameHere -p db_name > backup-db_name.sql
您可以使用mysql命令导入这样的文件。
语法
导入mysqldump命令创建的数据的语法如下:
mysql -u {DB-USER-NAME} -p {DB-NAME} < {db.file-name.sql} mysql -u {DB-USER-NAME} -h {MySQL-SERVER-HOST-NAME} -p {DB-NAME} < {backup.db.file-name.sql} mysql -e "source /path/to/backup-db.sql" db_name_here mysql -u DB_USER_NAME -p -e "source /path/to/backup-db.sql" db_name_here
示例:将转储文件重新加载到服务器中
在此示例中,为salesdb1用户和销售数据库导入(还原)名为sales.sql的文件,执行:
$ mysql -u salesdb1 -p sales < sales.sql
如果数据库salesdb1不存在,请首先创建它,然后按如下所示导入它:
$ mysql -u root -p -e 'create database salesdb1;' $ mysql -u salesdb1 -p sales < sales.sql
您还可以使用以下语法将转储文件加载回服务器:
############################################## ## DB Name: sales ## DB User: salesdb1 ## DB backup file (import file name): /root/sales.sql ############################################## mysql -e "source /root/sales.sql" sales mysql -u salesdb1 -p -e "source /root/sales.sql" sales
请注意,大型.sql数据库导入可能需要一些时间才能完成工作。
切勿将导入文件存储在/tmp中或者从/tmp /文件夹中导入.sql文件。