mysql数据库的导出和导入。
1、导出全部数据库
执行如下命令可以导出全部数据库:
mysqldump --all-databases -uroot -p > all_databases.sql
2、导入数据库
执行如下操作导入导出的数据到数据库:
(1)、登陆新数据库
如下命令登陆到ip为192.168.1.246,端口默认为3306的数据库
mysql -h 192.168.1.246 -uroot -p
(2)、导入
执行如下命令导入
source /home/admin/mysql/all_databases.sql
3、常见问题
(1)、mysqldump失败
mysqldump导出时可能会遇到如下报错原因:
Can't connect to local MySQL server through socket '/tmp/mysql.sock'
此时需要先确认mysql是否正常启动,如果正常启动后查看/etc/my.cnf文件中的socket的配置,如本文中的配置如下:
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
可见socket的文件存放在/var/lib/mysql/mysql.sock目录下而非/tmp/mysql.sock目录下,因此mysqldump无法正常执行,此时可以执行如下命令创建一个软链接:
ln -s /var/lib/mysql/mysql.sock /tmp/mysql.sock
之后再重新尝试运行mysqldump命令。