# 命令行备份数据库
# 本地
命令格式:
mysqldump -u [用户名] -p[密码] [数据库名] > [导出文件名.sql]
示例:假设用户名是root,密码是123456,要导出名为testdb的数据库,将其导出到当前目录下名为testdb_export.sql的文件中。在命令行中输入以下内容: mysqldump -u root -p123456 testdb > testdb_export.sql
# 远程
假设远程 MySQL 服务器的 IP 地址是[远程服务器IP],端口是3306(MySQL 默认端口),你的用户名是root,密码是root,要备份的数据库是sm,备份文件名为sm_db_remote.sql,在本地命令行中可以这样使用mysqldump命令:
mysqldump -h [远程服务器IP] -P 3306 -u root -proot sm > sm_db_remote.sql
其中-h参数用于指定远程主机的 IP 地址,-P(注意是大写)参数用于指定远程 MySQL 服务器的端口号,后面的-u和-p参数分别用于指定用户名和密码,最后是要备份的数据库名称和输出的备份文件名。
# 导出路径
默认位置(相对路径)
- 当你使用
mysqldump -u [用户名] -p[密码] [数据库名]> [导出文件名.sql]
这样的命令时,如果没有指定文件的绝对路径,文件会被导出到你执行命令时所在的当前目录。 - 例如,你在命令行中打开了一个终端窗口,当前目录是
C:\Users\YourName
(在 Windows 系统下)或者/home/YourName
(在 Linux 系统下),那么文件就会被导出到这个目录下。你可以通过命令行中的pwd
(在 Linux 和 Mac 系统中)或者cd
命令查看当前所在的目录位置。
- 当你使用
指定绝对路径
如果你想将文件导出到特定的位置,可以在
>
符号后面指定文件的绝对路径。例如,在 Windows 系统下,如果你想将文件导出到
D:\backup
目录下,文件名是
testdb_backup.sql
,假设用户名是
root
,密码是
password
,数据库名是
testdb
,命令可以写成:
mysqldump -u root -p password testdb > D:\backup\testdb_backup.sql
在 Linux 系统下,如果你想将文件导出到
/var/backup
目录下,文件名是
mydb_export.sql
,用户名是
admin
,密码是
secret
,数据库名是
mydb
,命令可以写成:
mysqldump -u admin -psecret mydb >/var/backup/mydb_export.sql