MySQL之数据导入导出备份以及事务、存储引擎

简介: MySQL之数据导入导出备份以及事务、存储引擎 数据导入 作用:把文件系统的内容导入到数据库中 操作步骤: 1.在数据库中创建对应的表 create table userinfo(  username varchar(20), .

MySQL之数据导入导出备份以及事务、存储引擎

数据导入

作用:把文件系统的内容导入到数据库中

操作步骤:

1.在数据库中创建对应的表


create table userinfo(  username varchar(20),
passwd char(1),
uid int
gid int
comment varchar(50),  
homedir varchar(50), 
shell varchar(50) );

2.把要导入的文件拷贝到数据库搜索路径中

          1.查看数据库的搜索路径

                   show variables like "secure_file_priv";

          2.sudo cp / etc / passwd / var / lib / mysql - files /

3.执行数据导入语句(mysql输入四条命令一起写)

          load data infile "/var/lib/mysql-files/passwd"

          into table userinfo(库名)

          fields terminated by ":"  # 表示以冒号分割

          lines terminated by "\n";

数据导出

作用:将数据库中的表记录保存到系统文件中

语法格式:

select(...字段名) from 表名

into outfile "/var/lib/mysql-files/user1.txt"

fields terminated by "分隔符"

lines terminated by "\n";

数据备份(mysqldump,Linux终端操作)

命令格式 : mysqldump -u用户名 -p 源库名 > 路径/xxx.sql

源库名的表示方式:

--all-databases 备份所有库

 

 

库名      备份单个库

-B 库1 库2...   备份多个库

库名 表1 表2... 备份指定库的指定表

示例:

1.备份所有库all.sql,放到mydata目录中

     mysqldump -root -p --all-databases > all.sql

2.备份db4库中的sheng,city 和xian三张表为 db4scx.sql

     mysqldump -uroot -p db4 sheng city xian > db4scx.sql

数据恢复

命令格式 : mysql -u用户名 -p 目标库名 < xxx.sql

示例:

     mysql -uroot -p --one-database MOSHOU < all.sql

注意:

恢复库时,原库中表中记录会被覆盖,新增表不会被覆盖

事务和事务回滚

定义:一件事从开始发生到结束的过程

作用:确保数据一致性

事务应用

开启事务:begin;

## autocommit 被禁用,SQL命令不会提交到数据库执行

终止事务:commit;

rollback;

注意:

事务和事务回滚只针对表记录操作:增、删、改有效,对键库建表无效

 

 


示例:
1.背景 你:建行卡 你朋友:工商卡 你在建行自动取款机上给你朋友工商卡转5000元
2.过程
表1:CCB
create table CCb(name char(15),money init );
insert into CCB values ("xhuanwian",10000);
表2:ICBC
create table ICBC(name char(15),money int);
insert into ICBC values ("shouqian",4000);
3.
mysql>begin;
mysql>update CCB set money=5000 where name
mysql>update ICBC set money=9000 where name

存储引擎(代表表的处理器)

MySQL存储引擎(处理表的处理器)

基本操作:

        查看所有存储引擎

             show engines;

        查看表存储引擎

              show create table 表名;

        指定存储引擎

                create table 表名(……)engine = innodb,character set utf8;

         修改已有表的存储引擎

                 alter table 表名 engine=myisam;

工作常用

        InnoDB MyISAM

修改表的默认存储引擎(修改配置文件)

sudo -i

cd /etc/mysql/mysql.conf.d/

(复制一下,以防丢失)

[mysqld]

default-storage-engine=myisam

(修改默认引擎)

重启mysql

存储引擎特点

MyISAM特点

             独享表空间

              表名.frm bi结构

              表名.myd 表记录

               表名.myi 索引文件

                只支持表级锁

InnoDB特点

           共享表空间

           表名.frm 表结构和索引信息

           表名.ibd 表记录

            支持行级锁

memory

           表结构存储于硬盘,表记录存储于内存

            表名.frm

            服务重启后表结构还在,表记录都消失

 

决定表使用什么存储引擎

主要用来查询的表用MyISAM

写操作多的表用InnoDB

原文地址https://blog.csdn.net/sinat_42311311/article/details/81410817

相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。 &nbsp; 相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情:&nbsp;https://www.aliyun.com/product/rds/mysql&nbsp;
相关文章
|
缓存 NoSQL 关系型数据库
美团面试:MySQL有1000w数据,redis只存20w的数据,如何做 缓存 设计?
美团面试:MySQL有1000w数据,redis只存20w的数据,如何做 缓存 设计?
美团面试:MySQL有1000w数据,redis只存20w的数据,如何做 缓存 设计?
|
SQL 人工智能 关系型数据库
如何实现MySQL百万级数据的查询?
本文探讨了在MySQL中对百万级数据进行排序分页查询的优化策略。面对五百万条数据,传统的浅分页和深分页查询效率较低,尤其深分页因偏移量大导致性能显著下降。通过为排序字段添加索引、使用联合索引、手动回表等方法,有效提升了查询速度。最终建议根据业务需求选择合适方案:浅分页可加单列索引,深分页推荐联合索引或子查询优化,同时结合前端传递最后一条数据ID的方式实现高效翻页。
610 0
|
12月前
|
存储 关系型数据库 MySQL
在CentOS 8.x上安装Percona Xtrabackup工具备份MySQL数据步骤。
以上就是在CentOS8.x上通过Perconaxtabbackup工具对Mysql进行高效率、高可靠性、无锁定影响地实现在线快速全量及增加式数据库资料保存与恢复流程。通过以上流程可以有效地将Mysql相关资料按需求完成定期或不定期地保存与灾难恢复需求。
822 10
|
存储 关系型数据库 MySQL
【赵渝强老师】使用select...into outfile语句备份MySQL
本文介绍了MySQL中使用`SELECT...INTO OUTFILE`语句将表数据导出为文本文件的方法。通过示例演示了如何备份员工表(emp)的数据,包括创建存储目录、设置权限、配置参数`secure_file_priv`以及解决相关错误的过程。字段分隔符和行终止符可自定义,确保数据格式符合需求。最后展示了备份文件的内容,验证操作成功。
771 36
|
存储 SQL 关系型数据库
【赵渝强老师】使用mysqldump备份MySQL
本文介绍了 MySQL 自带的逻辑备份工具 mysqldump 的使用方法。通过 mysqldump,可以将数据库中的数据转换为对应的 SQL 插入语句,便于备份和还原。文章详细说明了如何备份所有数据库、指定数据库及特定表,排除某些表不备份的操作,以及删除数据库后如何通过备份文件恢复数据。同时提供了视频讲解和具体命令示例,帮助用户更好地理解和应用该工具。
1329 5
|
存储 SQL 关系型数据库
MySQL存储引擎简介
在选择相应的存储引擎时,需要充分考虑实际业务场景、性能需求和数据一致性要求,从而为数据管理提供最佳支持。
585 17
|
SQL 存储 缓存
MySQL 如何高效可靠处理持久化数据
本文详细解析了 MySQL 的 SQL 执行流程、crash-safe 机制及性能优化策略。内容涵盖连接器、分析器、优化器、执行器与存储引擎的工作原理,深入探讨 redolog 与 binlog 的两阶段提交机制,并分析日志策略、组提交、脏页刷盘等关键性能优化手段,帮助提升数据库稳定性与执行效率。
328 0
|
存储 SQL 关系型数据库
【赵渝强老师】使用mydumper备份MySQL
本文介绍了使用mydumper工具进行MySQL数据库备份与恢复的操作方法。相比单线程工作的mysqldump,mydumper支持多线程,速度提升可达10倍。其功能包括事务性表快照、快速压缩、导出binlog等,并提供详细的参数说明和操作步骤。文章通过实例演示了安装mydumper、创建存储目录、全库备份、指定数据库及表备份、删除数据库以及使用myloader恢复数据的完整流程,并附带视频讲解,帮助用户更好地理解和应用该工具。
937 0
|
存储 SQL 缓存
mysql数据引擎有哪些
MySQL 提供了多种存储引擎,每种引擎都有其独特的特点和适用场景。以下是一些常见的 MySQL 存储引擎及其特点:
362 0
|
11月前
|
缓存 关系型数据库 BI
使用MYSQL Report分析数据库性能(下)
使用MYSQL Report分析数据库性能
629 158

推荐镜像

更多