跳至正文

Linux下导入MySQL数据库命令

1、首先Linux下查看MySQL相关目录:
# whereis mysql

2、进入MySQL
# mysql -u用户名 -p密码
如我输入的命令行:mysql -uroot -p123

3、选择数据库:

如果数据库不存在,则先建空数据库:
mysql>create database dbname;

如数据库已存在,则选择数据库:
mysql>use 目标数据库名
如我输入的命令行:mysql>use dbname;

4、导入文件:
mysql>source 导入的文件名;
如我输入的命令行:mysql>source /data/dbname.sql;

5、命令行方式不登录MySQL直接导入数据库:

mysql -uroot -pPASSWORD dbname < /data/dbname.sql

其它常用命令:

1、备份命令
  格式:mysqldump -h主机名 -P端口 -u用户名 -p密码 --database 数据库名 > 文件名.sql
  例如: mysqldump -h 192.168.1.100 -p 3306 -uroot -ppassword --database cmdb > /data/backup/cmdb.sql
2、备份压缩
  导出的数据有可能比较大,不好备份到远程,这时候就需要进行压缩
  格式:mysqldump -h主机名 -P端口 -u用户名 -p密码 --database 数据库名 | gzip > 文件名.sql.gz
  例如: mysqldump -h192.168.1.100 -p 3306 -uroot -ppassword --database cmdb | gzip > /data/backup/cmdb.sql.gz
3、备份同个库多个表
  格式:mysqldump -h主机名 -P端口 -u用户名 -p密码 --database 数据库名 表1 表2 .... > 文件名.sql
  例如 mysqldump -h192.168.1.100 -p3306 -uroot -ppassword cmdb t1 t2 > /data/backup/cmdb_t1_t2.sql
4、同时备份多个库
  格式:mysqldump -h主机名 -P端口 -u用户名 -p密码 --databases 数据库名1 数据库名2 数据库名3 > 文件名.sql
  例如:mysqldump -h192.168.1.100 -uroot -ppassword --databases cmdb bbs blog > /data/backup/mutil_db.sql
5、备份实例上所有的数据库
  格式:mysqldump -h主机名 -P端口 -u用户名 -p密码 --all-databases > 文件名.sql
  例如:mysqldump -h192.168.1.100 -p3306 -uroot -ppassword --all-databases > /data/backup/all_db.sql
6、备份数据出带删除数据库或者表的sql备份
  格式:mysqldump -h主机名 -P端口 -u用户名 -p密码 --add-drop-table --add-drop-database 数据库名 > 文件名.sql
  例如:mysqldump -uroot -ppassword --add-drop-table --add-drop-database cmdb > /data/backup/all_db.sql
7、备份数据库结构,不备份数据
  格式:mysqldump -h主机名 -P端口 -u用户名 -p密码 --no-data 数据库名1 数据库名2 数据库名3 > 文件名.sql
  例如:mysqldump --no-data –databases db1 db2 cmdb > /data/backup/structure.sql