
在MySQL中每一个数据库都会在定义好(或者默认)的数据目录下存在一个以数据库名字命名的文件夹,用来存放该数据库中各种表数据文件。
1、“frm”文件 与表相关的元数据(meta)信息都存放在“frm”文件中,包括表结构的定义信息等。不论是什么存储引擎,每一个表都会有一个以表名命名的“frm”文件。所有的“frm”文件都存放在所属数据库的文件夹下面。
2、“MYD”文件“ MYD”文件是MyISAM存储引擎专用,存放MyISAM表的数据。每一个MyISAM表都会有一个“MYD”文件与之对应,同样存放于所属数据库的文件夹下,和“frm”文件在一起。
3、“MYI”文件 “MYI”文件也是专属于MyISAM存储引擎的,主要存放MyISAM表的索引相关信息。对于MyISAM存储来说,可以被cache的内容主要就是来源于“MYI”文件中。每一个MyISAM表对应一个“MYI”文件,存放于位置和“frm”以及“MYD”一样。
管理工具:
可以使用命令行工具管理 MySQL 数据库(命令 mysql 和 mysqladmin),也可以从 MySQL 的网站下载图形管理工具 MySQL Administrator, MySQL Query Browser 和 MySQL Workbench。
phpMyAdmin是由 php 写成的 MySQ L资料库系统管理程程序,让管理者可用 Web 界面管理 MySQL 资料库。
phpMyBackupPro也是由 PHP 写成的,可以透过 Web 界面创建和管理数据库。它可以创建伪 cronjobs,可以用来自动在某个时间或周期备份 MySQL 数据库。另外,还有其他的 GUI 管理工具,例如 mysql-front 以及 ems mysql manager, navicat等等。
百度百科-mySQL
数据库安全产品有很多的,例如抓包工具、数据库日志、应用系统自身审计、堡垒机、容灾备份、安全扫描与加固、数据库加密、数据库防火墙和数据库审计系统。但除了数据库审计系统之外,其他大部分都或多或少存在着弊端和缺陷,效果远不及数据库审计系统。
抓包工具:原始、低效
数据库日志:开启后严重影响数据库性能,影响数据可靠性,且易被篡改,一般不开启
应用系统自身审计:审计权限和 *** 作权限无法分开,失去公正判断
堡垒机:不能智能解析,需要人工识别分析(类似傻瓜照相机)
容灾备份:将数据备份,仅针对数据存储本身,目的是防止数据丢失
安全扫描与加固:有一定用处,可扫描漏洞并进行加固以防止攻击,但其属于静态扫描漏洞,对实时访问数据不起作用,具有局限性。
数据库加密:对存储在数据库中的数据进行加密,即使文件或硬盘丢失,也不会导致数据泄露,但目前技术还不够成熟。
数据库防火墙:是数据库审计的升级版,加上了拦截和阻断,但这个产品技术仍不成熟,特别是在数据库核心的地方做阻断,易导致整个系统崩溃,较稳妥的方案是建议数据库审计系统加堡垒机形成联动,进而达到防范或拦截的效果。
Oracle数据库的三种标准的备份方法:
1导出/导入(EXP/IMP)。
2热备份。
3冷备份。
注释:导出备件是一种逻辑备份,冷备份和热备份是物理备份。
一、导出/导入(Export/Import)
利用Export可将数据从数据库中提取出来,利用Import则可将提取出来的数据送回到Oracle数据库中去。
1、简单导出数据(Export)和导入数据(Import)
Oracle支持三种方式类型的输出:
(1)、表方式(T方式),将指定表的数据导出。
(2)、用户方式(U方式),将指定用户的所有对象及数据导出。
(3)、全库方式(Full方式),瘵数据库中的所有对象导出。
数据导入(Import)的过程是数据导出(Export)的逆过程,分别将数据文件导入数据库和将数据库数据导出到数据文件。
2、增量导出/导入
增量导出是一种常用的数据备份方法,它只能对整个数据库来实施,并且必须作为SYSTEM来导出。在进行此种导出时,系统不要求回答任何问题。导出文件名缺省为exportdmp,如果不希望自己的输出文件定名为exportdmp,必须在命令行中指出要用的文件名。
增量导出包括三种类型:
(1)、“完全”增量导出(Complete)
即备份三个数据库,比如:
expsystem/==040731dmp
(2)、“增量型”增量导出
备份上一次备份后改变的数据,比如:
expsystem/==040731dmp
(3)、“累积型”增量导出
累计型导出方式是导出自上次“完全”导出之后数据库中变化了的信息。比如:
expsystem/==040731dmp
数据库管理员可以排定一个备份日程表,用数据导出的三个不同方式合理高效的完成。
比如数据库的被封任务可以做如下安排:
星期一:完全备份(A)
星期二:增量导出(B)
星期三:增量导出(C)
星期四:增量导出(D)
星期五:累计导出(E)
星期六:增量导出(F)
星期日:增量导出(G)
如果在星期日,数据库遭到意外破坏,数据库管理员可按一下步骤来回复数据库:
第一步:用命令重新生成数据库结构;
第二步:创建一个足够大的附加回滚。
第三步:完全增量导入A:
impsystem/=RESTOREFULL=yFILE=A
第四步:累计增量导入E:
impsystem/=RESTOREFULL=YFILE=E
第五步:最近增量导入F:
impsystem/=RESTOREFULL=YFILE=F
二、冷备份
冷备份发生在数据库已经正常关闭的情况下,当正常关闭时会提供给我们一个完整的数据库。冷备份时将关键性文件拷贝到另外的位置的一种说法。对于备份Oracle信息而言,冷备份时最快和最安全的方法。冷备份的优点是:
1、是非常快速的备份方法(只需拷文件)
2、容易归档(简单拷贝即可)
3、容易恢复到某个时间点上(只需将文件再拷贝回去)
4、能与归档方法相结合,做数据库“最佳状态”的恢复。
5、低度维护,高度安全。
但冷备份也有如下不足:
1、单独使用时,只能提供到“某一时间点上”的恢复。
2、再实施备份的全过程中,数据库必须要作备份而不能作其他工作。也就是说,在冷备份过程中,数据库必须是关闭状态。
3、若磁盘空间有限,只能拷贝到磁带等其他外部存储设备上,速度会很慢。
4、不能按表或按用户恢复。
如果可能的话(主要看效率),应将信息备份到磁盘上,然后启动数据库(使用户可以工作)并将备份的信息拷贝到磁带上(拷贝的同时,数据库也可以工作)。冷备份中必须拷贝的文件包括:
1、所有数据文件
2、所有控制文件
3、所有联机REDOLOG文件
4、Initora文件(可选)
值得注意的使冷备份必须在数据库关闭的情况下进行,当数据库处于打开状态时,执行数据库文件系统备份是无效的。
下面是作冷备份的完整例子。
(1)关闭数据库
sqlplus/nolog
sql
sql
(2)用拷贝命令备份全部的时间文件、重做日志文件、控制文件、初始化参数文件
sql
(3)重启Oracle数据库
sql
三、热备份
热备份是在数据库运行的情况下,采用方式备份数据库的方法。所以,如果你有昨天夜里的一个冷备份而且又有今天的热备份文件,在发生问题时,就可以利用这些资料恢复更多的信息。热备份要求数据库在Archivelog方式下 *** 作,并需要大量的档案空间。一旦数据库运行在archivelog状态下,就可以做备份了。热备份的命令文件由三部分组成:
1数据文件一个表空间一个表空间的备份。
(1)设置表空间为备份状态
(2)备份表空间的数据文件
(3)回复表空间为正常状态
2备份归档log文件
(1)临时停止归档进程
(2)log下那些在目标目录中的文件
(3)重新启动archive进程
(4)备份归档的redolog文件
3用命令来备份控制文件
热备份的优点是:
1可在表空间或数据库文件级备份,备份的时间短。
2备份时数据库仍可使用。
3可达到秒级恢复(恢复到某一时间点上)。
4可对几乎所有数据库实体做恢复
5恢复是快速的,在大多数情况下爱数据库仍工作时恢复。
热备份的不足之处:
1不能出错,否则后果不堪设想。
2假如热备份不成功,所得结果则不能用于时间点的恢复。
3因为难于维护,所以需要特别仔细小心,不允许在 *** 作时半途而废。
关于Oracle数据库的备份方式就为大家讲解到这里,以后大家需要进行数据库备份工作时可以参照上文中讲解的,从上文中任选一种,就可以完成Oracle数据库的备份,希望上文中涉及到的内容对大家能够有所帮助。
mysql数据库表间的关系图可以通过navicat查看:
第一步:下载navicat打开;
第二步:点击navicat界面最右下角标注的按钮即可查看关系图。
最新的MySQLWorkbench已经完全包含了数据库建模与设计、数据库SQL开发和数据库管理与维护等功能。
Mysql数据库-----表
shqihoo2018-04-0708:20
1、定义:表(table)是数据库最基本的组成单元,数据库是用来存储数据的,数据库中有很多表,每一个表都是一个独立的单元,表也是一个结构化的文件,由行和列组成,行称为数据或记录,列称为字段,字段又包含:字段名称、字段类型、长度、约束。
2、创建表
(1)、语法格式:createtable表名称(字段名类型(长度)约束);
(2)、MySQL常用数据类型
VARCHAR:可变长度字符串(VARCHAR(3)表示存储的数据长度丌能超过3个字符长度)
CHAR:定长字符串(CHAR(3)表示存储的数据长度丌能超过3个字符长度)
INT:整数型(INT(3)表示最大可以存储999)
BIGINT:长整型(对应java程序中的long类型)
FLOAT:浮点型单精度(FLOAT(7,2)表示7个有效数字,2个有效小数位)
DOUBLE:浮点型双精度(DOUBLE(7,2)表示7个有效数字,2个有效小数位)
DATE:日期类型(实际开发中,常用字符串代替日期类型)
BLOB:二进制大对象BinaryLargeObject(专门存储、视频、声音等数据)
CLOB:字符型大对象CharacterLargeObject(可存储超大文本,可存储4G字符串)
VARCHAR与CHAR对比:
都是字符串
VARCHAR比较智能,可以根据实际的数据长度分配空间,比较节省空间;但在分配的时候需要相关判断,效率低。
CHAR不需要劢态分配空间,所以执行效率高,但是可能会导致空间浪费
若字段中的数据不具备伸缩性,建议采用CHAR类型存储
若字段中的数据具备很强的伸缩性,建议采用VARCHAR类型存储
问题1:
数据模型按不同的应用层次分成三种类型:分别是概念数据模型、逻辑数据模型、物理数据模型。
1、概念数据模型(Conceptual Data Model):简称概念模型,是面向数据库用户的实现世界的模型,主要用来描述世界的概念化结构,它使数据库的设计人员在设计的初始阶段,摆脱计算机系统及DBMS的具体技术问题,集中精力分析数据以及数据之间的联系等,与具体的数据管理系统(Database Management System,简称DBMS)无关。概念数据模型必须换成逻辑数据模型,才能在DBMS中实现。
2、逻辑数据模型(Logical Data Model):简称数据模型,这是用户从数据库所看到的模型,是具体的DBMS所支持的数据模型,如网状数据模型(Network Data Model)、层次数据模型(Hierarchical Data Model)等等。此模型既要面向用户,又要面向系统,主要用于数据库管理系统(DBMS)的实现。
3、物理数据模型(Physical Data Model):简称物理模型,是面向计算机物理表示的模型,描述了数据在储存介质上的组织结构,它不但与具体的DBMS有关,而且还与 *** 作系统和硬件有关。每一种逻辑数据模型在实现时都有起对应的物理数据模型。DBMS为了保证其独立性与可移植性,大部分物理数据模型的实现工作又系统自动完成,而设计者只设计索引、聚集等特殊结构。
在概念数据模型中最常用的是E-R模型、扩充的E-R模型、面向对象模型及谓词模型。在逻辑数据类型中最常用的是层次模型、网状模型、关系模型。
数据库领域采用的数据模型有层次模型、网状模型和关系模型,其中应用最广泛的是关系模型。
层次模型:它的特点是将数据组织成一对多关系的结构。
层次结构采用关键字来访问其中每一层次的每一部分。
优点:
存取方便且速度快
结构清晰,容易理解
数据修改和数据库扩展容易实现
检索关键属性十分方便
缺陷:
结构呆板,缺乏灵活性
同一属性数据要存储多次,数据冗余大(如公共边)
不适合于拓扑空间数据的组织 网状模型用连接指令或指针来确定数据间的显式连接关系,是具有多对多类型的数据组织方式 优点:
能明确而方便地表示数据间的复杂关系
数据冗余小
缺陷:
网状结构的复杂,增加了用户查询和定位的困难。
需要存储数据间联系的指针,使得数据量增大
数据的修改不方便(指针必须修改)
关系数据库模型是以记录组或数据表的形式组织数据,以便于利用各种地理实体与属性之间的关系进行存储和变换,不分层也无指针,是建立空间数据和属性数据之间关系的一种非常有效的数据组织方法
优点:
结构特别灵活,满足所有布尔逻辑运算和数学运算规则形成的查询要求
能搜索、组合和比较不同类型的数据
增加和删除数据非常方便
缺陷:
数据库大时,查找满足特定关系的数据费时
对空间关系无法满足
问题2:
删除“学生”表性别为“男”的记录。
查询学生表(列姓名,总分),条件是总分大于85分的记录
在数据库中,存在链接主体存储在数据库外指的是在一个数据表中,存在对另一个数据表的外键关联,但是这个外键关联的主体数据并不存储在当前数据表中,而是存储在关联的另一个数据表中。这种设计方式称为关系型数据库中的“外键约束”,可以用来建立表与表之间的关系,保证数据的一致性和完整性。
例如,假设有两个数据表 A 和 B,其中表 A 包含一个外键字段 f_key,这个外键字段与表 B 的主键字段 b_key 关联。当表 A 中插入新数据时,如果插入的外键字段值在表 B 中不存在,就会触发外键约束,插入失败。这样就保证了表 A 中的 f_key 字段的有效性,同时也保证了数据的一致性和完整性。
外键约束的设计可以有效地避免数据的不一致和损坏,但是也需要注意外键关联的查询效率和数据的维护成本。此外,外键约束还可以在多个表之间建立复杂的关系,包括一对一、一对多和多对多等关系。
以上就是关于MySQL的数据库文件有几种扩展名及作用分别是什么全部的内容,包括:MySQL的数据库文件有几种扩展名及作用分别是什么、数据库安全产品有哪些、ORACLE数据库如何备份数据最好是备份哪些东西(oracle怎么备份数据库)等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)