mysql还原txt表的字段结构_MySQL数据还原与备份

1. 创建表时使用不同的引擎(Innodb 或 Myisam)

数据存储方式不同:

Innodb:只有表结构,数据全部存储在ibdata1文件中

Myisam:表、数据和索引全部单独分开存储(当创建一张表后,数据库文件夹中会同时生成三个文件,frm文件存储结构,MYD文件存储数据, MYI文件存储索引)

针对Myisam存储引擎的文件备份,可以直接复制三个文件到指定的数据库下,即可使用。

2. 单表数据的备份与还原

单表数据备份

每次只能备份一张表,且只能备份数据,表结构不能备份。

通常的使用:将表中的数据导出到文件

备份:从表中选出一部分数据保存到外部文件(outfile)中

语法:select */字段列表 into outfile '文件所在路径' from 数据源;  --前提是外部文件不存在

高级备份:自己指定字段和行的处理方式

语法:select */字段列表 into outfile '文件所在路径' fields 字段处理 lines 行处理 from 数据源;

fields:字段处理

enclosed by:字段用什么包裹,默认是' ' , 空字符串

terminated by:字段以什么结束,默认是\t,即tab键

escaped by:特殊符号用什么方式处理,默认是\\,即使用反斜杠转义

lines: 行处理

starting by:每行以什么开始,默认是' ' , 空字符串

terminated by:每行以什么结束,默认是\r\n,即换行符

例:select * into outfile 'D:/server/temp/class.txt'

--字段处理

fields

enclosedby '"' --数据使用双引号包裹

terminated by '|' --使用竖线分割字段数据--行处理

lines

startingby 'start:' --每行以start:开头

from my_class;

数据还原:将一个在外部保存的数据重新恢复到表中(表结构必须存在)

语法:load data infile '文件所在路径' into table 表名[(字段列表)] fields 字段处理 lines 行处理

怎么备份的,怎么还原,fields 字段处理 lines 行处理参照文件备份时的设置。

3. SQL备份

方案2:使用SQL指令还原

source 备份文件所在路径;

4. 增量备份

增量备份是针对mysql服务器的日志文件进行备份。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
1. 在mysql中创建三张图书数据库: 创建图书数据库: ``` CREATE DATABASE Books; ``` 使用图书数据库: ``` USE Books; ``` 创建三个数据: ``` CREATE TABLE Authors( AuthorID INT NOT NULL AUTO_INCREMENT, FirstName VARCHAR(50), LastName VARCHAR(50), PRIMARY KEY(AuthorID) ); CREATE TABLE Publishers( PublisherID INT NOT NULL AUTO_INCREMENT, PublisherName VARCHAR(50), PRIMARY KEY(PublisherID) ); CREATE TABLE Books( BookID INT NOT NULL AUTO_INCREMENT, Title VARCHAR(100), AuthorID INT, PublisherID INT, PRIMARY KEY(BookID), FOREIGN KEY(AuthorID) REFERENCES Authors(AuthorID), FOREIGN KEY(PublisherID) REFERENCES Publishers(PublisherID) ); ``` 备份还原数据库: ``` # 备份数据mysqldump -u root -p Books > Books_backup.sql # 还原数据mysql -u root -p Books < Books_backup.sql ``` 分离和附加数据库: ``` # 分离数据库 FLUSH TABLES WITH READ LOCK; SET GLOBAL read_only = ON; UNLOCK TABLES; # 附加数据库 SET GLOBAL read_only = OFF; ``` 2. 创建并添加约束(3张)、查看结构、删除 创建并添加约束: ``` CREATE TABLE Orders( OrderID INT NOT NULL AUTO_INCREMENT, CustomerID INT, OrderDate DATETIME, PRIMARY KEY(OrderID), FOREIGN KEY(CustomerID) REFERENCES Customers(CustomerID) ); CREATE TABLE Customers( CustomerID INT NOT NULL AUTO_INCREMENT, CustomerName VARCHAR(50), ContactName VARCHAR(50), Country VARCHAR(50), PRIMARY KEY(CustomerID) ); CREATE TABLE OrderDetails( OrderDetailID INT NOT NULL AUTO_INCREMENT, OrderID INT, ProductID INT, Quantity INT, PRIMARY KEY(OrderDetailID), FOREIGN KEY(OrderID) REFERENCES Orders(OrderID), FOREIGN KEY(ProductID) REFERENCES Products(ProductID) ); ``` 查看结构: ``` DESCRIBE Orders; ``` 删除: ``` DROP TABLE Orders; ``` 3. 结构:增加字段,改字段名称,类型长度,类型更改,删除字段名 增加字段: ``` ALTER TABLE Orders ADD Discount FLOAT; ``` 改字段名称: ``` ALTER TABLE Orders CHANGE COLUMN Discount DiscountPercent FLOAT; ``` 类型长度: ``` ALTER TABLE Customers MODIFY COLUMN CustomerName VARCHAR(100); ``` 类型更改: ``` ALTER TABLE Orders MODIFY COLUMN OrderDate DATE; ``` 删除字段: ``` ALTER TABLE Orders DROP COLUMN DiscountPercent; ``` 名: ``` ALTER TABLE Orders RENAME TO OrderHeaders; ``` 4. 增加主键自增,创建规则,绑定,解除,删除规则 增加主键自增: ``` ALTER TABLE Customers MODIFY COLUMN CustomerID INT NOT NULL AUTO_INCREMENT; ``` 创建规则: ``` CREATE TRIGGER tr_Customers_Insert BEFORE INSERT ON Customers FOR EACH ROW SET NEW.CustomerName = UPPER(NEW.CustomerName); ``` 绑定规则: ``` ALTER TABLE Customers ADD CONSTRAINT chk_Country CHECK (Country IN ('USA', 'UK', 'China')); ``` 解除规则: ``` ALTER TABLE Customers DROP CONSTRAINT chk_Country; ``` 删除规则: ``` DROP TRIGGER tr_Customers_Insert; ``` 5. 通过命令添加约束,删除约束 添加约束: ``` ALTER TABLE Customers ADD CONSTRAINT FK_Orders_Customers FOREIGN KEY (CustomerID) REFERENCES Orders(CustomerID); ``` 删除约束: ``` ALTER TABLE Customers DROP FOREIGN KEY FK_Orders_Customers; ```

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值