我离开Linode是因为我没有必要的Linux系统管理技能;在我完成过渡到对新手更友好的服务之前,我需要下载MySQL数据库的内容。是否有一种方法可以从命令行执行此操作?
当前回答
对于某些版本的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
不要进入mysql,只要打开命令提示符,然后直接输入:
mysqldump -u [uname] -p[pass] db_name > db_backup.sql
您可以使用mysqldump命令行函数来实现这一点。
例如:
如果它是一个完整的DB,那么:
$ mysqldump -u [uname] -p db_name > db_backup.sql
如果都是db,那么:
$ mysqldump -u [uname] -p --all-databases > all_db_backup.sql
如果它是一个DB中的特定表,那么:
$ mysqldump -u [uname] -p db_name table1 table2 > table_backup.sql
你甚至可以使用gzip自动压缩输出(如果你的DB非常大):
$ mysqldump -u [uname] -p db_name | gzip > db_backup.sql.gz
如果你想远程执行这个操作,并且你有访问服务器的权限,那么下面的方法可以工作(假设MySQL服务器的端口是3306):
$ mysqldump -P 3306 -h [ip_address] -u [uname] -p db_name > db_backup.sql
它应该将.sql文件放到运行命令行的文件夹中。 EDIT:更新以避免在CLI命令中包含密码,使用不带密码的-p选项。它会提示你,而不是记录它。
如果从远程服务器下载,这里有一个简单的例子:
mysqldump -h my.address.amazonaws.com -u my_username -p db_name > /home/username/db_backup_name.sql
-p表示输入密码,与db_name无关。输入命令后,将提示输入密码。输入它并按enter。
只需输入mysqldump或mysqldump——cmd中的帮助将显示如何使用
下面是我的cmd结果
C:\Program Files\MySQL\MySQL Server 5.0\bin>mysqldump
Usage: mysqldump [OPTIONS] database [tables]
OR mysqldump [OPTIONS] --databases [OPTIONS] DB1 [DB2 DB3...]
OR mysqldump [OPTIONS] --all-databases [OPTIONS]
For more options, use mysqldump --help
推荐文章
- 警告用户/local/mysql/data目录不属于mysql用户
- 添加一个复合主键
- 无法添加或更新子行:外键约束失败
- 如何使用文件的行作为命令的参数?
- 如何从本地机器mysqldump远程数据库
- 如何正确地创建复合主键- MYSQL
- 仅在Datetime列上按日期分组
- 在MySQL数据库中存储货币值的最佳数据类型
- BAT文件:打开新的cmd窗口并在其中执行命令
- 如何做一个非贪婪匹配在grep?
- 如何自定义'显示进程列表'在mysql?
- MySQL删除一些外键
- 用MySQL LEFT JOIN删除行
- 如何在IntelliJ IDEA中输入命令行参数?
- MySQL - length() vs char_length()