1、数据导入(文件内容导入数据库)
1、作用 :把文件系统的内容导入到数据库中
2、语法 load data infile "/var/lib/mysql-files/文件名" into table 表名 fields terminated by "分隔符" lines terminated by "\n";3、将scoretable.csv文件导入到数据库的表中 1、在数据库中创建对应的表 create table scoretab( id int, name varchar(15), score float(5,2), number bigint, class char(7) );2、把文件拷贝到数据库的默认搜索路径中 1、查看默认搜索路径 show variables like "secure_file_priv"; # 这个是数据库的默认搜索路径 /var/lib/mysql-files/ 2、拷贝文件 sudo cp ~/scoretable.csv /var/lib/mysql-files/ 3、执行数据导入语句 load data infile "/var/lib/mysql-files/scoretable.csv" into table scoretab fields terminated by "," lines terminated by "\n"; 4、文件权限 rwxrw-rw- 1 tarena tarena scoretable.csv 所有者 所属组 rwx : tarena用户 rw- : 同组其他用户 rw- : 其他组的其他用户(mysql用户) r -> 4 w -> 2 x -> 1 chmod 644 文件名 rw-r--r-- 5、Excel表格如何转化为CSV文件 1、打开Excel文件 -> 另存为 -> CSV(逗号分隔) 6、更改文件编码格式 1、用记事本/编辑器 打开,文件->另存为->选择编码2、数据导出
1、作用
将数据库中表的记录导出到系统文件里2、语法格式 select ... from 表名 into outfile "/var/lib/mysql-files/文件名" fields terminated by "分隔符" lines terminated by "\n";3、把MOSHOU库下的sanguo表英雄的姓名、攻击值、国家导出来,sanguo.txt select name,gongji,country from MOSHOU.sanguo into outfile "/var/lib/mysql-files/sanguo.txt" fields terminated by " " lines terminated by "\n"; $ sudo -i $ cd /var/lib/mysql-files/ $ ls $ cat sanguo.txt4、将mysql库下的user表中 user、host两个字段的值导出到 user.txt select user,host from mysql.user into outfile "/var/lib/mysql-files/user.txt" fields terminated by " " lines terminated by "\n";3、数据备份(mysqldump,在Linux终端中操作)
1、命令格式
mysqldump -u用户名 -p 源库名 > ~/***.sql 2、源库名的表示方式 --all-databases 备份所有库 库名 备份单个库 -B 库1 库2 库3 备份多个库 库名 表1 表2 表3 备份指定库的多张表 3、示例 1、备份所有库,放到 mydata 目录下:all.sql mysqldump -uroot -p --all-databases > all.sql 2、备份 db4 库中的 sheng city xian 三张表,scx.sql mysqldump -uroot -p db4 sheng city xian > scx.sql 3、备份 MOSHOU 和 db4 库, md.sql mysqldump -uroot -p -B MOSHOU db4 > md.sql 4、备份 db4 库, db4.sql mysqldump -uroot -p db4 > db4.sql4、数据恢复
1、命令格式(Linux终端)
mysql -uroot -p 目标库名 < ***.sql 2、从所有库备份中恢复某一个库(--one-database) mysql -uroot -p --one-database 目标库名 < all.sql mysql -uroot -p --one-database db4 < all.sql 3、示例 1、在db4.sheng新增一条记录 2、在db4中新建一张表 t888,里面插入1条记录 3、从db4.sql中恢复db4库 4、注意 1、恢复库时如果恢复到原库会将表中数据覆盖,新增表不会删除 2、数据恢复时如果恢复的库不存在,则必须先创建空库