Mysql 库和表的导入导出(windows)

!!!所有导入导出操作都是在cmd中进行的,而非mysql中

1. 备份库(导出)

❤1. 备份用户名下的所有的数据库

用dos命令进入mysql的bin目录下

			mysqldump -u用户名 -p密码 --all-databases > sqlAllFile.sql

		eg: mysqldump -uroot -p123456 --all-databases > sqlAllFile.sql

注意:all前面是两个减号(–),databases前面是一个减号(-) --all-databases

会在bin目录下生成一个sqlAllFile.sql文件,即备份root用户下所有的数据库文件(导出操作均在bin目录下生成备份文件)

❤2. 导出某个数据库所有表结构及表数据
		    mysqldump  -u用户名 -p -h 127.0.0.1   数据库名称> db.sql;
		
		eg: mysqldump -uroot -p -h 127.0.0.1 students > students.sql;

-h 是否添加影响不大

			mysqldump -u用户名 -p 数据库名称 > db.sql;

		eg: mysqldump -uroot -p students > students.sql;

命令含义:

  1. mysqldump :使用mysql导出的命令
  2. -h:后面是紧跟着你要导入的ip:本地要么是127.0.0.1或者是localhost
  3. -u:mysql的用户名:一般我们安装上默认是root,密码要么是123或者是123456 即-uroot
  4. -p: 此处是密码,可以不用写。整个命令输入完成之后回车,即可看到输入密码的地方,输入密码后回车即可导入
  5. database_name : 数据库名,就是你要往哪个数据库导入数据
  6. > :固定写法
  7. sqlFileName.sql : 就是你要导出的sql文件名称

2. 导出表(test)

❤1. 导出数据库库dbname某张表(test)结构
      mysqldump -u用户名 -p -d dbname test>table.sql;
      
  eg: mysqldump -uroot -p -d students course>course.sql;
  --回车输入密码 
❤2. 导出数据库dbname某张表结构及表数据(不加-d)
     mysqldump -u用户名 -p密码 dbname test>db.sql;
    
  eg: mysqldump -uroot -p shop test>test.sql;
  --回车输入密码 
❤3. 导出数据库dbname所有表结构及表数据(不加-d)
      mysqldump -u用户名 -p密码  dbname >db.sql;
      
  eg:mysqldump -uroot -p  shop >db.sql;
  --回车输入密码 
❤4. 导出数据中dbname多张表(test1,test2,test3)结构及表数据
      mysqldump -u用户名 -p密码 dbname test1 test2 test3>db.sql;
    
  eg: mysqldump -uroot -p shop test1 test2 test3>db.sql;
  --回车输入密码 

3. 导入库

mysql -h127.0.0.1 -u用户名 -p 数据库名 < sqlFileName.sql

eg :mysql -h127.0.0.1 -uroot -p database_name < sqlFileName.sql
命令如何使用:

  1. mysql :使用mysql命令

  2. -h:后面是紧跟着你要导入的ip:本地要么是127.0.0.1或者是localhost,或者远程公网能访问到的ip地址

  3. -u:mysql的用户名:一般我们安装上默认是root,密码要么是123或者是123456 即-uroot

  4. -p:此处是密码,可以不用写。整个命令输入完成之后回车,即可看到输入密码的地方,输入密码后回车即可导入

  5. database_name :数据库名,就是你要往哪个数据库导入数据

  6. < :固定写法

  7. sqlFileName.sql : 就是你要导入的sql文件名称(此sql文件里面既可以是整个库,也可以是某张表的sql语句)

注意:在导入的时候需要事先要有数据库,不能导入到未拥有的数据库

4. 将表中的数据导出到txt,或者xls中

如下语句在mysql中执行

❤1. 导出到 .txt文件中
		select * from 表名 into outfile "文件名.txt"
		
	eg:select * from test into outfile "file.txt"
❤2. 导出到 .xls文件中
		select * from 表名 into outfile "文件名.xls"
		
	eg:select * from test into outfile "file.xls"

5. 将txt中或xls中的数据导入数据库

在导入之前要准备数据表,即自己先创建好数据库中的表

❤1. 导入 .txt文件
		load data local infile "要导入的文件路径" into table 表名
		
	eg: load data local infile "C:\\file.txt" into table test
❤2. 导入 .xls文件
		load data local infile "要导入的文件路径" into table 表名
		
	eg: load data local infile "C:\\file.xls" into table test

6. 以上操作的各种报错:

  1. The MySQL server is running with the –secure-file-priv option so it cannot execute this statement. 报错
    在mysql文件的配置文件my.ini中添加如下代码,并重启。
	[mysqld]
	secure_file_priv=""
  1. Loading local data is disabled; this must be enabled on both the client and server sides
    在mysql中执行
	set global local_infile=on;
  1. LOAD DATA LOCAL INFILE file request rejected due to restrictions on access.
    登录的时候使用
	mysql --local-infile=1 -uroot -p
  1. File 'C:Program Filesmysql-8.0.23-winx64Dataspjj.txt' not found (OS errno 2 - No such file or directory)
    由于目录结构太深了,导致的报错

  2. ERROR 1146 (42S02): Table 'test' doesn't exist
    要先创建表结构才能导入

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值