我想使用SSH将一个sql.gz
文件插入到我的数据库中。我该怎么办?
例如,我有一个名为numbers.sql.gz
的电话号码数据库,这种文件是什么类型的,如何将该文件导入到我的数据库中?
发布于 2012-06-11 03:53:49
该文件是一个gzipped (压缩) SQL文件,几乎可以肯定是一个以.sql为扩展名的纯文本文件。您需要做的第一件事是通过scp将文件复制到数据库服务器。I think PuTTY's is pscp.exe
# Copy it to the server via pscp
C:\> pscp.exe numbers.sql.gz user@serverhostname:/home/user
然后通过SSH连接到您的服务器,并使用gunzip
解压文件
user@serverhostname$ gunzip numbers.sql.gz
user@serverhostname$ ls
numbers.sql
最后,使用<
输入重定向操作符将其导入到MySQL数据库中:
user@serverhostname$ mysql -u mysqluser -p < numbers.sql
如果numbers.sql文件没有创建数据库,但希望已经存在一个数据库,则还需要在命令中包含该数据库:
user@serverhostname$ mysql -u mysqluser -p databasename < numbers.sql
如果您能够从外部直接连接到您的MySQL服务器,那么您可以使用本地MySQL客户端,而不必进行复制和SSH。在这种情况下,你只需要一个可以在Windows上解压.gz文件的工具。我相信7zip可以做到这一点,或者你可以获得Windows的gzip/gunzip binaries。
发布于 2012-08-16 20:54:36
使用像putty这样的shell程序登录到您的服务器。
在命令行中键入以下命令
zcat DB_File_Name.sql.gz | mysql -u username -p Target_DB_Name
哪里
DB_File_Name.sql.gz
=要导入的sql.gz文件的完整路径
username
=您的mysql用户名
Target_DB_Name
=要导入数据库的数据库名称
当您在命令行中输入enter时,它将提示输入密码。输入您的MySQL密码。
你的任务完成了!
发布于 2012-06-11 03:57:44
如果没有单独的步骤来解压归档文件:
# import gzipped-mysql dump
gunzip < DUMP_FILE.sql.gz | mysql --user=DB_USER --password DB_NAME
我使用上面的代码片段重新导入mysqldump-backups,并使用以下代码对其进行备份。
# mysqldump and gzip (-9 ≃ highest compression)
mysqldump --user=DB_USER --password DB_NAME | gzip -9 > DUMP_FILE.sql.gz
https://stackoverflow.com/questions/10971597
复制相似问题