目录
日志
数据库日志文件用于备份,恢复,故障定位、分析是最核心的部分
mysql 与 oracle 日志有所区别
mysql 写一条数据,同步到日志中一条
INSERT INTO ky11 (id, name, score) VALUES (1, 'zhangsan', 20);
oracle重做日志组 个组中至少3个日志成员,轮流存储日志还会有另一个组与之同步/备份
-
INSERT INTO ky11: 这部分表示要向名为 "ky11" 的表中插入数据。ky11是表的名称。 -
(id, name, score): 这部分指定了要插入数据的列名。在这个例子中,有三列:id、name 和 score。可以根据自己的表结构修改列名。 -
VALUES (1, 'zhangsan', 20): 这部分指定了要插入的具体数据。在这个例子中,插入的值为 1(id)、'zhangsan'(name)和 20(score)。值的顺序应与列的顺序对应,并且根据数据类型进行正确的格式化。
数据库管理语句
SQL语句管理
DDL 数据定义操作 创建 比如表 库 索引
DML 数据操纵 用来插入 删除修改 数据库中的数据
DQL 数据查询 查找符合条的数据记录
DCL 数据控制 设置或者更改数据库用户和角色权 限
查看数据库信息
show databases;

查看数据库中的表信息use 数据库名#切换到书库中

show tables
show tables in mysql

显示数据表的结构(字段)
describe user;

Field;字段名称
type:数据类型
Null :是否允许为空
Key :主键
Type:数据类型
Null :是否允许为空key :主键
Default :默认值
Extra :扩展属性,例如:标志符列(标识了种子,增量/步长) 1 2 id: 1 3 5 7
常用的数据类型:
-
int:用于定义整数类型的数据。它可以存储整数值,例如 1、2、-5 等。 -
float:用于定义单精度浮点数,占用 4 字节(32 位)。它用来存储小数值,准确表示到小数点后六位。 -
double:用于定义双精度浮点数,占用 8 字节(64 位)。它也用来存储小数值,比float类型的精度更高。 -
char:用于定义固定长度的字符类型数据。需要指定长度,例如char(20)表示该字段能容纳 20 个字符。如果存入的数据长度小于指定长度,会被补空格至指定长度。如果存入的数据长度大于指定长度,在低版本中会被截取,而在高版本中会报错。 -
varchar:用于定义可变长度的字符类型数据。与char不同,varchar字段只占用实际存储的数据长度加上一些额外开销。例如varchar(20)表示该字段最多能容纳 20 个字符。相对于char,varchar在存储空间上更为灵活。 -
text:用于存储大文本数据,例如较长的字符串或文档。它可以容纳更大的字符数量。 -
image:用于存储二进制图像数据,例如图片文件。它适合存储图像或其他二进制数据。 -
decimal(5,2):用于存储指定长度和精度的小数值。在这个例子中,它能容纳 5 个有效数字,小数点后面有 2 位。
主键是唯一标识表中每条记录的字段或字段集合。主键的值在整个表中必须是唯一且不可重复的。主键可以由单个字段构成,也可以由多个字段组合而成。
MysQL数据库的数据文件存放在/usr/local/mysql/data目录下,每个数据库对应一个子目录,用于存储数据表文件。每个数据表对应为三个文件,扩展名分别为".frm"、“.MYD”和”.MYI"。
MYD"文件是MyISAM存储引繁专用,存放MVISAM表的数据。每一个MyISAM表都会有一个"MYD"文件与之对应,同样存放于所属数据库的文件夹下,和”.frm"文件在一起。
".MYI"文件也是专属于 MyISAM 存储引擎的,主要存放 MyISAM 表的索引相关信息。对于 MyISAM存储来说,可以被 cache 的内容主要就是来源于”,MYI"文件中。每一个MyISAM表对应一个”.MYI"文件,存放于位置和.frm"以及”.MYD”一样。
MyISAM 存储引擎的表在数据库中,每一个表都被存放为三个以表名命名的物理文件每个表都有且仅有这样三个文件做为 MVISAM(frm,myd,myi)存储类型的表的存储,也就是说不管这个表有多少个索引,都是存放在同一个,MYI 文件中。
另外还有",ibd”和 ibdata 文件,这两种文件都是用来存放 Innodb 数据的,之所以有两种文件来存放Innodb的数据(包括索引),是因为Innodb的数据存储方式能够通过配置来决定是使用共享表空间存放存储数据,还是独享表空间存放存储数据。独享表空间存储方式使用”.ibd”文件来存放数据,且每个表一个”ibd"文件,文件存放在和 MyISAM数据相同的位置。如果选用共享存储表空间来存放数据,则会使用 ibdata文件来存放,所有表共同使用一个(或者多个,可自行配置) ibdata 文件
数据库管理
SQL语句
SQL语句用于维护管理数据库,包括数据查询、数据更新、访问控制、对象管理等功能。
SQL语言分类:
DDL:数据定义语言,用于创建数据库对象,如库、表、索引等
DML:数据操纵语言,用于对表中的数据进行管理,用来插入、删除和修改数据库中的数据
DQL:数据查询语言,用于从数据表中查找符合条件的数据记录
DCL:数据控制语言,用于设置或者更改数据库用户或角色权限(数据控制语句,用于控制不通数据段直接的许可和访问级别的语句,这些语句定义了数据库、表、字段、用户的访问权限和安全级别,如COMMIT、ROLLBACK、GRANT、REVOKE
1、DDL:数据定义语言,用于创建数据库对象,如库、表、紧引等
create drop alter
创建新的数据库
CREATE DATABASE 数据库名;
创建新的表
CREATE TABLE 表名 (字段1 数据类型,字段2 数据类型,..);#主键一般选择能代表唯一性的字段不允许取空值 (NULL),一个表只能有一个主键。
CREATE DATABASE kqc school;
USE kqc school;
CREATE TABIE KY13 (id int NOT NULL,name char(10) NOT NULL,score decimal(5,2),passwd char(48)
DEFAULT'PRIMARY KEY (id));
DESC KY13:
#NOT NULLF'不允许为空值
#DEFAULT''默认值为空
PRIMARY KEY :主键一般选择没有重复且不为空值的字段
删除指定的数据表
2、DML管理表中的数据记录一一一数据操纵语言,用于对表中的数据进行管理,用来插入、删除和修改数据库中的数据
insert update delete
格式:
INSERT INTO 表名(字段1,字段2[,...]) VALUES (字段1的值,字段2的值,...);
示例:
INSERTINTOKY13(id,name,score,passwd)values(1,'zhangsan',70.5,PASSWORD('123456'));
#PASSMORD('123456:查询数据记录时,密码字串以加密形式显示:若不使用PASSMORD0),查询时以明文显示
INSERT INTO ZZZ VALUES(2,lisi',90.5,654321) ;
SELECT FROM ZZZ : #查询表的数据记录
#修改、更新数据表中的数据记录
格式:
UPDATE表名 SET 字段名1=字段值1[,字段名2=字段值2] [WHERE 条件表达式];
示例:
UPDATE ZzZ SET passwd=PASSWORD(') WHERE name='zhangsan';
UPDATE ZZZ SETname='wangxiaoer',passwd= WHERE id-3;

本文介绍了数据库管理的基本概念,包括SQL语句的使用,如创建数据库和数据表,插入、更新和删除数据,以及主键的概念。同时,对比了MySQL和Oracle的日志系统,强调了日志在备份和故障恢复中的重要性。此外,文章还列举了常用的数据类型,并提及了数据库文件的存储结构。

2278

被折叠的 条评论
为什么被折叠?



