我离开Linode是因为我没有必要的Linux系统管理技能;在我完成过渡到对新手更友好的服务之前,我需要下载MySQL数据库的内容。是否有一种方法可以从命令行执行此操作?


当前回答

对于那些想要在命令行中输入密码的人。这是可能的,但建议在引号内传递,这样特殊字符就不会引起任何问题。

mysqldump -h'my.address.amazonaws.com' -u'my_username' -p'password' db_name > /path/backupname.sql

其他回答

注意:这一步只在转储MySQL文件之后进行(上面的大多数答案都解决了这个问题)。

它假设您在远程服务器上有上述转储文件,现在您想将其保存到本地计算机。

若要将转储的.sql文件从远程服务器下载到本地计算机,请执行

scp -i YOUR_SSH_KEY your_username@IP:name_of_file.sql ./my_local_project_dir

对于那些想要在命令行中输入密码的人。这是可能的,但建议在引号内传递,这样特殊字符就不会引起任何问题。

mysqldump -h'my.address.amazonaws.com' -u'my_username' -p'password' db_name > /path/backupname.sql

对于某些版本的MySQL,请尝试。

sudo mysqldump [database name] > db_backup.sql

对于Windows用户,您可以在mysql文件夹中运行该命令

如。

cd c:\wamp64\bin\mysql\mysql5.7.26\bin
mysqldump -u root -p databasename > dbname_dump.sql
@echo off
for /f "tokens=2 delims==" %%a in ('wmic OS Get localdatetime /value') do set "dt=%%a"
set "YY=%dt:~2,2%" & set "YYYY=%dt:~0,4%" & set "MM=%dt:~4,2%" & set "DD=%dt:~6,2%"
set "HH=%dt:~8,2%" & set "Min=%dt:~10,2%" & set "Sec=%dt:~12,2%"
set "datestamp=%YYYY%.%MM%.%DD%.%HH%.%Min%.%Sec%"
set drive=your backup folder
set databaseName=your databasename
set user="your database user"
set password="your database password"
subst Z: "C:\Program Files\7-Zip" 
subst M: "D:\AppServ\MySQL\bin"
set zipFile="%drive%\%databaseName%-%datestamp%.zip"
set sqlFile="%drive%\%databaseName%-%datestamp%.sql"
M:\mysqldump.exe --user=%user% --password=%password% --result-file="%sqlFile%" --databases %databaseName%
@echo Mysql Backup Created
Z:\7z.exe a -tzip "%zipFile%" "%sqlFile%"
@echo File Compress End
del %sqlFile%
@echo Delete mysql file
pause;