linux,centos7.0以上下对mysql数据库的导入导出

1:查看mysql安装路径:

指令 ps -ef|grep mysql 得出结果

root 968 1 0 18:25 ? 00:00:00 /bin/sh /usr/local/mysql/bin/mysqld_safe --datadir=/usr/local/mysql/data --pid-file=/tmp/mysqld/mysqld.pid

mysql 1400 968 0 18:25 ? 00:00:02 /usr/local/mysql/bin/mysqld --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --plugin-dir=/usr/local/mysql/lib/plugin --user=mysql --log-error=/var/log/mysqld.log --pid-file=/tmp/mysqld/mysqld.pid --socket=/tmp/mysql.sock --port=3306

root 9318 7985 0 19:49 pts/0 00:00:00 grep --color=auto mysql

其中:basedir:这个后面就是mysql安装路径(一般需要把mysqldump 这个命令连接到默认的路径),就是说如果我安装的路径是:/usr/local/mysql 的话 那么mysqldump 的文件就在 他的 下级 目录 bin 里面

ln -fs /usr/local/mysql/bin/mysqldump /usr/bin

这个就是快捷命令

2:导出数据库中的表结构和数据

格式:mysqldump -u root -p 数据库名字 > /要生成sql文件的路径/文件名字.sql

mysqldump -u root -p syn > /home/syn.sql #导出数据库

123456 #输入数据库密码

扩展:

mysqldump -u root -p bbb Person > /home/Person.sql #导出数据库中的某个表(注意:首先数据库要有bbb这个数据库才能使用这个命令)

注意:(在执行上述命令之前先看看)

(1)登录mysql:mysql -u root -p

(2)查看是否有bbb这个数据库

show databases;

(3)没的话创建一个(有的就不用了)

create database bbb;

(4)设置数据库编码

set names utf8;

3:只导出数据库中的表结构

mysqldump -u用户名 -p密码 -d 数据库名 > 数据库名.sql

/usr/local/mysql/bin/ mysqldump -uroot -p -d syn > syn.sql

注:/usr/local/mysql/bin/ —> mysql的data目录

4:导入数据库

(1)首先建空数据库

mysql>create database aaa;

(2) 选择数据库

mysql>use aaa;

(3)导入数据(注意sql文件的路径)

mysql>source /home/syn.sql;

这种方法导入也可以。(不管是导入数据库表结构和数据都行)

mysql -u用户名 -p密码 数据库名 < 数据库名.sql

mysql -u root -p bbb </home/Person.sql