我离开Linode是因为我没有必要的Linux系统管理技能;在我完成过渡到对新手更友好的服务之前,我需要下载MySQL数据库的内容。是否有一种方法可以从命令行执行此操作?
当前回答
如果你正在运行MySQL而不是默认端口:
mysqldump.exe -u username -p -P PORT_NO database > backup.sql
其他回答
如果从远程服务器下载,这里有一个简单的例子:
mysqldump -h my.address.amazonaws.com -u my_username -p db_name > /home/username/db_backup_name.sql
-p表示输入密码,与db_name无关。输入命令后,将提示输入密码。输入它并按enter。
您可以使用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选项。它会提示你,而不是记录它。
对于Windows用户,您可以在mysql文件夹中运行该命令
如。
cd c:\wamp64\bin\mysql\mysql5.7.26\bin
mysqldump -u root -p databasename > dbname_dump.sql
在最新版本的mysql中,至少在我的版本中,你不能直接在命令中输入你的pass。
你必须跑:
mysqldump -u[新]-p db_name > db_backup.sql
然后它会要求输入密码。
对于某些版本的MySQL,请尝试。
sudo mysqldump [database name] > db_backup.sql
推荐文章
- 如何循环通过文件匹配通配符在批处理文件
- 如何停止mysqld
- 检查MySQL表是否存在而不使用“select from”语法?
- 从NOW() -1天选择记录
- 我怎么能显示线在公共(反向差异)?
- Git显示“警告:永久添加到已知主机列表”
- 从表中选择1是什么意思?
- 数据库性能调优有哪些资源?
- 如何更改表的默认排序规则?
- MySQL foreign_key_checks是否影响整个数据库?
- 设置NOW()为datetime数据类型的默认值?
- 在MySQL中Datetime等于或大于今天
- 删除MySQL中的主键
- 我如何在MySQL中添加更多的成员到我的enum类型列?
- 相当于varchar(max)在MySQL?