mysql备份更换存储引擎_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

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值