数据库Oracle基础知识与日常监控
Orale数据库必备知识
Oracle 教程记录:1·OracleOraDb10/11g_home1TNSListener:表示监听服务,如果客户端想连接数据库,次服务必须打开,在日后开发中次服务起作用。
2·OracleServeiceMLDN,表示数据库主服务,命名规则:OracleService数据库名称。
次服务必须启动。
负责Oracle根本无法使用。
3·直接通过命令行方式进入SQLPlus的控制中心,进行命令的输入。
4·也可以通过窗口的形式启动命令行工具,及sqlplusw工具。
5·查询、修改、插入、删除等语句必须以分号结束语句及“; ”。
6·进入环境以后首先进行环境设置:<1>设置每行显示的长度:set linesize 长度值;<2>设置每页显示记录的长度:set pagesize 行数值;7·在sqlplusw中因为没法修改输入内容,所以一般会使用本机的记事本程序进行编辑,直接在命令窗口输入“ed 文件名即可”,输入完成之后,会提示用户是否要创建文件,编辑完成以后可以通过@文件名的方式执行命令,除了可以直接简历文件以外也可以通过@找到磁盘上的文件如“@ d:\demo·txt”效果是一样的,如果后缀名是“*·sql”,在查找是可以不注入后缀,系统默认的是“·sql”文件。
8·在sqlplusw/sqlplus中可以使用其他用户连接·sys 是超级管理员·system 是普通管理员·scott 是普通用户*连接格式:conn 用户名/密码[as sysdba|sysoper]·如果现在连接的是超级管理员(sys),则在连接的最后必须写上AS SYSDBA。
以系统管理员的身份进行登陆。
例如:conn sys/xuli564335 as sysdba;注意:如果连接用户下查询某一个用户下表而其连接用户没用此表则必须加上该表所在的用户名,格式:”用户名·表名“9·显示当前连接的用户是那个:show user;10·查看标的完整结构:desc 表名称;11·SQL可以分为以下几组:DML:数据操作语言——用户检索或者修改数据。
oracle日常巡检内容
oracle日常巡检内容Oracle日常巡检内容1. 数据库配置检查•确认数据库参数设置是否合理•检查数据库和实例的名称及归属•检查数据库初始化参数是否按照最佳实践进行了配置2. 存储检查•检查表空间的使用情况,确保没有存储空间不足的情况出现•检查数据库文件的大小和增长情况,是否需要进行调整•检查redo日志文件的大小和数量,是否满足数据库的需求3. 逻辑结构检查•检查表、索引及其关联的约束是否正常•检查视图、存储过程、函数和触发器的状态和有效性•检查数据库对象的权限和所有权是否正确4. 数据完整性检查•检查数据表的行完整性,是否存在脏数据或冗余数据•检查约束的有效性和唯一性,是否存在违反约束的数据5. 性能检查•检查数据库的运行性能,包括CPU利用率、内存使用和磁盘I/O 等指标•检查SQL的执行计划,优化可能存在的性能瓶颈•检查数据库连接数和会话数,是否超过系统的承载能力6. 安全性检查•检查用户权限,确保每个用户的权限不超过其所需•检查密码策略和账号锁定设置,防范未授权访问和暴力破解•检查数据库日志和审计功能的开启情况,以跟踪和监控潜在的安全风险7. 备份和恢复检查•检查数据库的备份策略是否合理,并进行备份的可行性验证•检查恢复策略和操作步骤,确认数据库故障时的可靠性和可恢复性•检查归档日志的生成和转储情况,确保数据库的连续性和完整性8. 资源利用检查•检查数据库的资源利用情况,包括SGA和PGA的大小及利用率•检查数据文件、临时文件和日志文件的大小和利用率•检查并发和批处理作业,以保障系统资源的合理分配与利用以上是Oracle日常巡检的一些常见内容,通过对数据库配置、存储、逻辑结构、数据完整性、性能、安全性、备份恢复和资源利用等方面的检查,可以确保数据库的稳定性、安全性和可靠性。
巡检内容的具体细节可以根据实际需求进行适当调整和补充。
9. 日志监控•检查数据库日志文件的大小和增长情况,是否超过了预设阈值•检查日志文件的生成和转储是否正常,确保日志的连续性和完整性•监控错误日志和警告日志,及时发现并解决潜在的问题10. 定期维护•执行定期维护任务,例如统计表和索引的信息,更新数据库统计信息•定期收集和分析数据库性能指标,并作出相应的调整和优化•检查数据库软件及补丁的更新情况,确保数据库系统的安全和稳定11. 连接和会话管理•检查数据库连接数和会话数的变化趋势,确保系统的可用性和稳定性•监控长时间运行的会话和阻塞会话,及时解决可能的问题•检查连接和会话的权限和资源限制,防止滥用和资源浪费12. 监控和告警•设置数据库的监控和告警机制,及时发现和解决潜在的问题•监控数据库的系统资源利用率,预测和避免系统性能下降•监控数据库对象的变化和异常操作,保障数据的安全性和完整性13. 灾备和容灾•检查灾备和容灾系统的配置和状态,确保备份和恢复的可靠性•定期测试灾备和容灾方案的可行性,并进行必要的调整和优化•监控主备数据库之间的数据同步情况,保证数据的一致性和可用性14. 文档和记录•维护数据库巡检的文档和记录,包括巡检日期、巡检内容和发现的问题•归档和备份巡检记录,以便日后的审查和比对•根据巡检结果制定和执行相应的改进措施,持续优化数据库的运行和管理巡检内容的详细执行方法和频率将根据数据库的特定需求和环境进行调整和规划。
oracle 基础概念
oracle 基础概念
Oracle是一种关系型数据库管理系统,被广泛用于企业级应用程序的开发、部署和维护。
了解Oracle的基础概念对于学习和使用该系统非常重要。
以下是一些基本概念:
1. 数据库:是一个结构化的数据集合,它以表的形式存储数据。
2. 表:数据库中的主要组成部分,表示一种结构化的数据集合,并且由一系列的行和列组成。
3. 列:表中的一个元素,表示一个特定的数据类型。
4. 行:表中的一行,表示一个特定记录。
5. 主键:表中唯一标识每一行的列,用于确保数据唯一性,并提高查询性能。
6. 外键:关联两个表的列,用于建立表之间的关系。
7. SQL:结构化查询语言,用于在关系型数据库中查询和操作数据。
8. 视图:从表中选择特定的列和行,形成一个虚拟的表,可以用于简化查询和提高性能。
9. 存储过程:是一组预定义的SQL语句,可以被多次调用,用于实现特定的业务逻辑。
10. 触发器:是一种特殊的存储过程,可以在表中插入、更新或删除数据时自动执行。
以上是Oracle的一些基础概念,了解这些概念可以帮助您更好地使用和理解该系统。
oracle日常运维操作总结
oracle日常运维操作总结一、硬件维护1.确保服务器硬件运行正常,定期检查硬件设备,如服务器、存储设备、网络设备等。
2.根据需要及时更新硬件设备,包括升级内存、硬盘等。
3.确保服务器周边设备运行正常,如UPS电源、空调等。
二、软件维护1.确保Oracle数据库软件运行正常,定期检查软件版本、补丁等。
2.更新Oracle数据库软件,包括升级Oracle版本、打补丁等。
3.定期清理无用文件,包括日志文件、临时文件等。
4.定期备份数据库,确保数据安全。
三、性能优化1.定期检查数据库性能,包括CPU使用率、内存使用率等。
2.根据性能检查结果,进行性能优化,如调整数据库参数、优化SQL语句等。
3.定期对数据库进行优化,包括重建索引、优化表空间等。
四、安全加固1.配置Oracle数据库的安全设置,如用户密码、权限管理等。
2.确保数据库账户的安全性,如定期修改密码、禁用无效账户等。
3.防止SQL注入等攻击行为,如使用参数化查询、限制用户输入等。
4.定期检查数据库的安全日志,包括登录日志、操作日志等。
五、数据备份1.制定数据备份计划,并按照计划执行备份操作。
2.采用多种备份方式,如全备份、增量备份等。
3.确保备份数据的可用性和完整性,如定期测试备份数据的恢复能力。
4.对备份数据进行存储和管理,确保数据安全。
六、故障处理1.建立故障处理流程,明确故障处理责任人和流程步骤。
2.对发生的故障进行及时处理,如系统崩溃、网络故障等。
3.对故障进行分类和总结,建立故障处理知识库。
4.定期对系统进行健康检查和性能测试,预防故障发生。
七、监控管理1.建立监控管理体系,包括监控指标、监控周期等。
2.使用监控工具,如OracleEnterpriseManager、Nagios等,对系统进行实时监控。
3.对监控数据进行分析和处理,及时发现和处理潜在问题。
4.定期对监控数据进行存储和管理,方便后续查询和分析。
八、应急预案1.制定应急预案,明确应急响应流程和责任人。
Oracle数据库入门教程
Oracle数据库入门教程Oracle数据库是目前世界上广泛应用的一种关系型数据库管理系统。
它具有高性能、高稳定性和高安全性的特点,在各种规模的企业和组织中被广泛使用。
本文将介绍Oracle数据库的基本概念、安装和配置、SQL语句以及常用管理工具等内容,帮助读者快速入门Oracle数据库。
一、Oracle数据库基本概念1. 数据库:数据库是一个有组织的数据集合,通过数据库管理系统(DBMS)进行管理和访问。
Oracle数据库是一种关系型数据库管理系统,使用表格来存储数据。
2. 实例:实例是Oracle数据库在内存中运行的副本。
每个实例对应一个特定的数据库,负责连接管理、内存管理、进程管理和数据缓存等。
3. 表空间:表空间是Oracle数据库中用来管理存储空间的逻辑结构,用于存储表、索引、数据文件等对象。
4. 数据文件:数据文件是Oracle数据库中用来存储实际数据的物理文件。
5.表:表是数据库中最基本的数据存储单位,由行和列组成。
6.列:列是表中的一个字段,用于存储不同类型的数据。
7.行:行是表中的一条记录,包含了不同列的数据。
二、Oracle数据库安装和配置2.配置实例:安装完成后,通过配置文件对实例进行配置,包括设置实例名、监听器端口、字符集等参数。
3.创建表空间:使用SQL语句创建需要的表空间,指定数据文件存储路径和大小等参数。
4.创建用户:通过SQL语句创建数据库用户,为用户分配合适的权限。
三、SQL语句1.创建表:使用CREATETABLE语句创建表,指定列的名称、数据类型以及约束等。
2.插入数据:使用INSERTINTO语句插入数据,指定表名和要插入的数据。
3.更新数据:使用UPDATE语句更新数据,指定表名、列名和要更新的值。
4.删除数据:使用DELETEFROM语句删除数据,指定表名和删除条件。
5.查询数据:使用SELECT语句查询数据,可以使用WHERE子句指定查询条件。
6.排序数据:使用ORDERBY子句对查询结果进行排序。
oracle知识点的总结
oracle知识点的总结概述Oracle 数据库是一种关系型数据库管理系统 (RDBMS),由美国甲骨文公司 (Oracle Corporation) 开发并提供支持。
它是目前全球最为流行的数据库之一,被广泛应用于企业级应用和大型系统中。
本文将总结一些 Oracle 数据库的重要知识点,包括数据库基本概念、SQL 查询语言、数据库管理、性能优化等方面,帮助读者更好地理解和运用 Oracle 数据库。
数据库基本概念1. 数据库的概念数据库是一种存储、管理和维护数据的系统,它可以让用户方便地访问和处理数据。
数据库的基本概念包括数据表、数据行、数据列、主键、外键、索引等。
数据表是数据库中的基本组织单元,数据行是表中的一条记录,数据列是记录中的字段。
主键是表中用来唯一标识每条记录的字段,外键是表与表之间关联的字段,索引是用来提高数据检索效率的数据结构。
2. SQL 语言SQL (Structured Query Language) 是一种用于操作数据库的标准化语言,它包括数据查询(SELECT)、插入 (INSERT)、更新 (UPDATE)、删除 (DELETE) 等操作。
SQL 查询语言是数据库操作中最为重要的部分,它可以让用户从数据库中检索需要的数据,并对数据进行调整和更新。
SQL 查询语言1. 基本查询SELECT 语句是 SQL 中最基本的查询语句,它用于从数据库中检索数据。
SELECT 语句的基本结构为:SELECT 列名 FROM 表名 WHERE 条件。
用户可以在 WHERE 子句中使用比较符号、逻辑符号和通配符来筛选特定的数据。
2. 聚合函数SQL 中有一些聚合函数,用于对查询结果进行统计和计算。
常见的聚合函数包括 COUNT、SUM、AVG、MAX、MIN 等,它们可以对查询结果集中的数据进行统计和汇总。
3. 子查询子查询是一个嵌套在主查询中的查询语句,它通常用于在查询中引用其他查询的结果。
oracle数据库基本概念
Oracle数据库是一种关系数据库管理系统(RDBMS)。
以下是Oracle数据库的一些基本概念:
1.数据库(Database):物理上表现为数据文件、日志文件和控制文件等,逻辑上以表空
间形式存在。
必须先创建数据库,才能使用Oracle。
2.全局数据库名(Global Database Name):用于区分一个数据库的标识,在安装数据库、
创建数据库、创建控制文件、修改数据库结构、利用RMAN备份时都需要使用。
它由数据库名称和域名构成,使得数据库的命名在整个网络环境中唯一。
3.数据库实例(Database Instance):每个启动的数据库都对应一个数据库实例,由这个
实例来访问数据库中的数据。
4.表空间(Tablespace):一个Oracle数据库能够有一个或多个表空间,而一个表空间则
对应着一个或多个物理的数据库文件,但一个数据库文件只能与一个表空间相联系。
表空间是Oracle数据库恢复的最小单位,容纳着许多数据库实体,如视图、索引、聚簇、回退段和临时段等。
5.关系数据库(Relational Database):按照二维表结构方式组织的数据集合,每个表体
现了集合理论中定义的数学概念——关系。
这些基本概念有助于理解Oracle数据库的结构和运作方式。
Oracle数据库日常巡检指令
Oracle 数据库日常巡检指令Oracle数据库的日常巡检内容包括:Oracle数据库基本状况检查;Oracle相关资源的使用情况检查;Oracle数据库性能检查;数据库服务器cpu、mem和I/O 性能检查;数据库服务器安全性及其他事项检查等五大检查项目。
1、数据库基本状况检查(1)、数据库实例状况检查说明:其中“STATUS”表示Oracle当前的实例状态,必须为“OPEN”;“DATABASE_STATUS”表示Oracle当前数据库的状态,必须为“ACTIVE”。
(2)、数据库表空间状态检查说明:输出结果中STATUS应该都为“ONLINE”。
(3)、数据库数据文件检查1 select tablespace_name,status from dba_tablespaces;说明:输出结果中“STATUS”应该都为“AVAILABLE”。
(4)、数据库在线日志检查1 select group#,status,type,member from v$logfile;说明:输出结果应该有3条或3条以上记录,“STATUS”应该为非“INVALID”,非“DELETED”。
“STATUS”的值为空表示正常。
(5)、数据库回滚段检查1 select segment_name,status from dba_rollback_segs;说明:输出结果中所有回滚段的“STATUS”应该为“ONLINE”。
2、数据库相关资源使用情况检查(1)、检查Oracle初始化文件中相关参数值1 select resource_name,max_utilization,initial_allocation, limit_value from v$resource_limit;说明:若字段值【LIMIT_VALU】-【MAX_UTILIZATION】<=5,则表明与RESOURCE_NAME相关的Oracle初始化参数需要调整。
oracle基础知识
oracle基础知识预览说明:预览图片所展示的格式为文档的源格式展示,下载源文件没有水印,内容可编辑和复制一.数据库审计:1.默认情况下,oracle会自动审计具有SYSOPER、SYSDBA权限用户所执行的特权操作,即连接数据库、关闭启动数据库并将特权操作的现骨干记录到操作系统审计跟踪中,如果要审计特权用户的其他数据库操作,就必须将初始化参数AUDIT_SYS_OPERATIONS设置成TRUE:SQL> CONNECT SYS/PASSWORD AS SYSDBA已连接SQL> ALTER SYSTEM SET2 AUDIT_SYS_OPERATIONS=TRUE SCOPE=SPFILE;系统已更改SQL> STARTUP FORCE 重新启动数据库,使设置生效如果要审计普通用户所执行的数据库操作,必须将初始化参数AUDIT_TRAIL设置成某个值,以便按照某种存放审计记录的方式启用数据库审计,另外还需要制定审计的用户、要审计的数据库操作、如何审计等选项。
2.应用审计:数据库审计只能记录执行审计操作的用户名、审计的操作、操作的对象、操作的时间、使用的终端等信息,而不能记录列一级的、数据值的变化(因为这与应用的具体表相关,所以oracle是不可能做这件事的)如果要审计跟踪某些列的数据值得变化,就必须使用应用审计,即通过客户极端的代码、服务器端的存储过程或触发器将这些记录到专门为此设计的表中。
3.创建用户:create user myuser1 identified by user1pswdDefault tablespace usersQuota 2M on users;4.默认情况下,oracle为了节省资源,减少I/O操作,通常是禁用审计功能,必须将初始化参数AUDIT_TRAIL设置成某个非NONE值,以便按照某种存放审计记录的方式启用数据库审计。
DB(或TRUE)启用审计,将审计记录存放到SYS方案的AUD$审计表中。
oracle日常运维总结
oracle日常运维总结Oracle是一种功能强大的关系型数据库管理系统,广泛应用于各种企业级应用程序中。
作为一名Oracle数据库管理员(DBA),日常运维是我们工作的重要组成部分。
在这篇文章中,我将总结一些Oracle日常运维的经验和注意事项,希望对其他DBA或使用Oracle 的人员有所帮助。
一、备份与恢复备份和恢复是数据库管理中至关重要的一环。
我们需要定期进行数据库备份,以防止数据丢失和系统故障。
在备份过程中,我们可以使用Oracle提供的工具和功能,如RMAN(Recovery Manager)和Data Pump。
RMAN提供了完整的备份和恢复解决方案,可以进行全库备份和增量备份,并且支持备份集和归档日志的管理。
Data Pump 可以用于导出和导入数据库对象和数据,可以选择全库导出或指定对象导出。
恢复也是DBA必须掌握的技能之一。
当数据库遇到故障或数据损坏时,我们需要根据备份文件进行恢复。
在恢复过程中,我们需要了解不同的恢复场景和方法,如完全恢复、不完全恢复和点恢复。
同时,我们还要考虑日志文件的应用和恢复集的管理,确保数据的一致性和完整性。
二、性能优化Oracle数据库的性能优化是DBA不可或缺的工作之一。
通过监控和调整数据库的各个方面,我们可以提高数据库的响应速度和吞吐量,提升用户体验。
以下是一些常见的性能优化技巧:1. SQL调优:通过分析和改进SQL语句,优化查询计划和执行效率。
我们可以使用Oracle提供的SQL调优工具,如SQL Tuning Advisor和SQL Access Advisor。
2. 系统监控:通过监控数据库的系统资源利用率和性能指标,及时发现和解决性能瓶颈。
我们可以使用Oracle Enterprise Manager 或自定义脚本进行系统监控。
3. 索引优化:通过创建和维护合适的索引,加快数据检索和查询速度。
我们需要了解不同类型的索引和索引的使用场景,避免创建过多或不必要的索引。
Oracle 数据库日常巡检
Oracle 数据库日常巡检阅读目录1. 检查数据库基本状况2. 检查Oracle相关资源的使用情况3. 检查Oracle数据库备份结果4. 检查Oracle数据库性能5. 检查数据库cpu、I/O、内存性能6. 检查数据库安全性7. 其他检查回到顶部1. 检查数据库基本状况包含:检查Oracle实例状态,检查Oracle服务进程,检查Oracle监听进程,共三个部分。
1.1. 检查Oracle实例状态select instance_name,host_name,startup_time,status,database_status from v$instance;其中“STATUS”表示Oracle当前的实例状态,必须为“OPEN”;“DATABASE_STATUS”表示Oracle当前数据库的状态,必须为“ACTIVE”。
1.2. 检查Oracle在线日志状态select group#,status,type,member from v$logfile;输出结果应该有3条以上(包含3条)记录,“STATUS”应该为非“INVALID”,非“DELETED”。
注:“STATUS”显示为空表示正常。
1.3. 检查Oracle表空间的状态select tablespace_name,status from dba_tablespaces;输出结果中STATUS应该都为ONLINE。
1.4. 检查Oracle所有数据文件状态select name,status from v$datafile;输出结果中“STATUS”应该都为“ONLINE”。
或者:select file_name,status from dba_data_files;输出结果中“STATUS”应该都为“AVAILABLE”。
1.5. 检查无效对象select owner,object_name,object_type from dba_objects where status!='VALID' and owner!='SYS' and owner!='SYSTEM';如果有记录返回,则说明存在无效对象。
oracle 19c 监控指标
一、引言Oracle 19c作为最新版本的数据库系统,具备许多强大的功能和性能优势。
其中,监控系统性能是数据库管理员日常工作中非常重要的一部分。
本文将详细介绍Oracle 19c的监控指标,帮助用户更有效地监控和优化数据库性能。
二、监控指标概述1. 数据库连接数数据库连接数是指当前数据库中正在活动的连接数量。
通过监控数据库连接数,可以了解数据库当前的负载情况,及时做出调整。
2. SQL执行情况SQL执行情况是指数据库中各个SQL语句的执行情况,包括执行次数、执行时间、IO消耗等。
通过监控SQL执行情况,可以找出执行效率较低的SQL,并进行优化。
3. 数据库性能指标数据库性能指标包括响应时间、并发数、IOPS等。
这些指标直接影响到数据库的性能表现,通过监控这些指标可以及时发现性能瓶颈并进行调整。
4. 硬件资源利用情况包括CPU利用率、内存利用率、磁盘IO利用率等。
这些硬件资源的利用情况直接关系到数据库的性能,在监控中需要重点关注。
5. 长时间运行会话长时间运行会话是指数据库中长时间未释放或执行的会话,可能导致资源占用过高。
监控这些会话可以及时发现并处理问题。
三、监控工具1. Oracle Enterprise ManagerOracle Enterprise Manager是Oracle冠方提供的一款强大的监控工具,可以实时监控数据库的各种指标,并提供性能优化建议。
2. AWR报告AWR报告是Oracle数据库的性能分析报告,其中包含了数据库各项性能指标的历史数据和趋势分析,可以通过AWR报告了解数据库的性能变化和趋势。
3. 自定义脚本管理员可以根据实际需要编写自定义的监控脚本,针对特定的监控指标进行监控与报警。
四、监控策略1. 定期收集监控数据建立定期收集监控数据的机制,比如每天、每周收集一次数据库性能数据,及时发现潜在问题。
2. 设置报警阈值根据数据库的实际情况,设置合理的监控报警阈值,一旦超出阈值即触发报警,及时处理问题。
oracle基础概念
oracle基础概念
Oracle是一个关系型数据库管理系统,以下是一些Oracle基础概念:
数据库(Database):物理存储数据的集合,在物理上表现为数据文件、日志文件和控制文件等,在逻辑上以表空间形式存在。
全局数据库(Global Database):用于区分一个数据的标识,在安装数据库、创建新数据库、创建控制文件、修改数据库结构、利用RMAN备份时都需要使用。
数据库实例(Database Instance):每个启动的数据库都对应一个数据库实例,由这个实例来访问数据库中的数据。
表空间(Tablespace):一个逻辑概念,一个表空间对应一个或多个物理存储文件(dbf和ora文件)。
每个实例下面有多个表空间。
用户(User):用户是在实例下创建的,不同实例可以创建相同名字的用户。
用户与用户之间的数据是隔离的。
数据完整性(Data Integrity):保证数据的准确性和一致性,防止数据库中存在不符合语义规定的数据和防止因错误信息的输入输出造成的无效操作或错误信息。
这些概念是Oracle数据库的基础,理解这些概念有助于更好地使用和管理Oracle数据库。
快速掌握oracle数据库基础知识
ORACLE体系结构
Oracle简称甲骨文,是仅次于微软公司的世界第二大软件公司,公 司成立于1979年,是加利福尼亚州的第一家在世界上推出以关系型数 据管理系统(RDBMS)为中心的一家软件公司。 Oracle不仅在全球最先推出了RDBMS,并且事实上掌握着这个市场的 大部分份额。他们的RDBMS被广泛应用于各种操作环境:Windows NT、基 于UNIX系统的小型机、IBM大型机以及一些专用硬件操作系统平台。 Oracle数据库管理系统是一个以关系型和面向对象为中心管理数据 的数据库管理软件系统,其在管理信息系统、企业数据处理、因特网及 电子商务等领域有着非常广泛的应用。因其在数据安全性与数据完整性 控制方面的优越性能,以及跨操作系统、跨硬件平台的数据互操作能力 ,使得越来越多的用户将Oracle作为其应用数据的处理系统。 Oracle数据库是基于“客户端/服务器”(Client/Server)模式结 构。客户端应用程序执行与用户进行交互的活动。其接收用户信息,并 向“服务器端”发送请求。服务器系统负责管理数据信息和各种操作数 据的活动。
表
分区表 在某些场合会使用非常大的表,比如人口信息统计表。如果 一个表很大,就会降低查询的速度,并增加管理的难度。一旦发 生磁盘损坏,可能整个表的数据就会丢失,恢复比较困难。根据 这一情况,可以创建分区表,把一个大表分成几个区( 小段) ,对 数据的操作和管理都可以针对分区进行,这样就可以提高数据库 的运行效率。分区可以存在于不同的表空间上,提高了数据的可 用性。
用户和权限
权限指的是执行特定命令或访问数据库对象的权 利 权限有两种类型,系统权限和对象权限
Байду номын сангаас系统权限允许用户执行某些数据库操作,如创建表就 是一个系统权限 对象权限允许用户对数据库对象(如表、视图、序列 等)执行特定操作
oracle数据库基础知识
一、概念1. 数据库名数据库名就是一个数据库的标识,就像人的身份证号一样。
用参数DB_NAME表示,如果一台机器上装了多个数据库,那么每一个数据库都有一个数据库名。
在数据库安装或创建完成之后,参数DB_NAME被写入参数文件之中。
格式如下:DB_NAME=heer 在创建数据库时就应考虑好数据库名,并且在创建完数据库之后,数据库名不宜修改,即使要修改也会很麻烦。
因为,数据库名还被写入控制文件中,控制文件是以二进制型式存储的,用户无法修改控制文件的内容。
假设用户修改了参数文件中的数据库名,即修改DB_NAME的值。
但是在Oracle启动时,由于参数文件中的DB_NAME与控制文件中的数据库名不一致,导致数据库启动失败,将返回ORA-01103错误。
数据库名是在安装数据库、创建新的数据库、创建数据库控制文件、修改数据结构、备份与恢复数据库时都需要使用到的。
有很多Oracle安装文件目录是与数据库名相关的,如:winnt: d:oracle\product\10.1.0\oradata\DB_NAME...Unix: /home/app/oracle/product/10.1.0/oradata/DB_NAME/...pfile:winnt: d:oracle\product\10.1.0\admin\DB_NAME\pfileini.oraUnix: /home/app/oracle/product/10.1.0/admin/DB_NAME/pfile/init$ORACLE_SID.ora跟踪文件目录:winnt: /home/app/oracle/product/10.1.0/admin/DB_NAME/bdump/...另外,在创建数据时,careate database命令中的数据库名也要与参数文件中DB_NAME 参数的值一致,否则将产生错误。
同样,修改数据库结构的语句alter database,当然也要指出要修改的数据库的名称。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Copyright 2009 Ferari Liu
#.11
Java池
Java命令的分析 如果要安装和使用Java 大小由参数JAVA_POOL_SIZE决定
Copyright 2009 Ferari Liu
#.12
程序全局区
为每个用户连接Oracle数据库保 留的内存 当进程创建时分配 进程结束后被释放 只能被一个进程使用 参数PGA_AGGREGATE_TARGET指定 PGA的总共大小
Copyright 2009 Ferari Liu
#.7
数据字典缓存
存储在数据库中最近使用的定义 包括数据文件,表,索引,列,用户,权限和其 他的数据库对象 在分析阶段, 服务器进程查找数据字典去验证对 象的名字以及是否是合法访问 对于查询和DML语句,如果数据字典的信息在缓存 中能够提高响应时间 大小由Shared Pool的大小决定
SPFILE spfileSID.ora
二进制文件 由Oracle服务器维护 一般存在于Oracle服务器上 能够自我调节参数值 能用RMAN备份
#.26
#.27
创建SPFILE
从一个PFILE文件中创建SPFILE
CREATE SPFILE = ‘$ORACLE_HOME/dbs/spfileDBA01.ora’ $ORACLE_HOME/dbs/spfileDBA01.ora’ FROM PFILE = ‘$ORACLE_HOME/dbs/initDBA01.ora’; $ORACLE_HOME/dbs/initDBA01.ora’
可选的后台进程 当启用归档方式后自动归档重做日志文件
Data files
Control files
Redo log files
ARCn
Archived redo log files
Copyright 2009 Ferari Liu
#.21
逻辑结构
表明数据库的物理空间如何使用 分为表空间,段,范围,块
Copyright 2009 Ferari Liu
#.8
数据缓冲区
存储从数据文件中获得的数据块的镜像 当获取和更新数据的时候能够大幅度的提高性能 管理上遵循LRU规则 参数DB_BLOCK_SIZE其块的大小 能够动态的调整大小
ALTER SYSTEM SET DB_CACHE_SIZE = 100M;
文本文件 可以用操作系统的编辑器修改 手工的修改 在下次启动的时候生效 默认的位置$ORACLE_HOME/dbs
#.24
创建PFILE
由一个init.ora文件的例子创建 由Oracle Universal Installer安装的 用操作系统的命令拷贝 并由数据库的SID唯一的标识
cp init.ora $ORACLE_HOME/dbs/initdba01.ora
DBWn
Data files Control files
• •
Database
Copyright 2009 Ferari Liu
#.16
日志写进程 (LGWR)
Instance SGA
LGWR写的条件: LGWR写的条件:
Redo Log Buffer
• • • • •
提交的时候 达到三分之一满了 日志的大小到1 日志的大小到1M 每隔三秒 在DBWn进程写之前 DBWn进程写之前
PGA Server process
User process
Copyright 2009 Ferari Liu
#.13
用户进程
请求与Oracle服务器连接 必须要先建立一个连接 不会直接和Oracle服务器联系
Server process User process Connection established
Parameter file
initSID.ora
Password file
Data files Redo log files Control file
*.dbf
*.log
*.ctl
Archive log file
pwdSID.ora
Copyright 2009 Ferari Liu
xxx.ARC
#.3
DBWn LGWR
Data files Control files
Redo Log files
Database
Copyright 2009 Ferari Liu
#.17
系统监测进程 (SMON)
Instance SGA
作用: 作用: • 实例恢复 • 前滚所有重做日 志中的改变 • 打开数据库为了 用户能访问
Instance SGA
Database Buffer Cache Java Pool Redo Log Buffer Large Pool
Server process PGA
Data Dictionary Cache
PMON SMON DBWR LGWR
CKPT
Others
Parameter file Password file
max_dump_file_size = 10240 background_dump_dest = /home/dba01/ADMIN/BDUMP user_dump_dest core_dump_dest undo_management undo_tablespace ... = /home/dba01/ADMIN/UDUMP = /home/dba01/ADMIN/CDUMP = AUTO = UNDOTBS
#.30
启动数据库到OPEN
OPEN 启动 MOUNT 打开控制文件 NOMOUNT 启动实例 SHUTDOWN 关闭 打开控制文件中所包含的所 有文件
#.29
修改SPFILE中的参数
修改参数值
ALTER SYSTEM SET undo_tablespace = UNDO2; UNDO2;
指定临时还是永久的改变
ALTER SYSTEM SET undo_tablespace = UNDO2 SCOPE=BOTH;
删除或者重设值
ALTER SYSTEM RESET undo_suppress_errors SCOPE=BOTH SID='*';
(2)内存结构 内存结构包括两个部分: 系统全局区 (SGA): 在实例启动的时候分配, 是Oracle实 例的基础组件 程序全局区 (PGA): 当服务器进程产生时分配
Copyright 2009 Ferari Liu
#.4
SGA组件概述
User process
Shared Pool Library CacheRedo Log files
Data files Control files
•
接合自由的空间 (coalesce every three seconds)
Database
•
释放临时表空间 (deallocated)
Copyright 2009 Ferari Liu
#.18
修改initSID.ora 编辑参数 根据数据库的需要指定
#.25
PFILE例子
# Initialization Parameter File: initdba01.ora db_name instance_name = dba01 = dba01 control_files =( /home/dba01/ORADATA/u01/control01dba01.ctl, /home/dba01/ORADATA/u02/control01dba02.ctl) db_block_size db_cache_size shared_pool_size java_pool_size = 4096 = 400M = 50000000 = 50000000
进程监测进程 (PMON)
Instance SGA
清除失败的进程: 清除失败的进程: • • • • 回滚事务 释放锁 释放其他资源 重启死dispatchers 重启死dispatchers
PMON
PGA area
Copyright 2009 Ferari Liu
#.19
检查点进程 (CKPT)
Instance SGA
作用: 作用: • • • 给信号给DBWn 给信号给DBWn 更新数据文件头 更新控制文件
DBWn LGWR CKPT
Data files Control files
Redo Log files
Database
Copyright 2009 Ferari Liu
#.20
归档进程 (ARCn)
Data files
Control files
Redo Log files
Archived Log files
Database
Copyright 2009 Ferari Liu
#.5
共享池
用于存储: 最近执行的SQL语句 最近使用的数据定义 由两个与性能相关的部分组成: 库缓存 数据字典缓存 由参数SHARED_POOL_SIZE决定大小
Tablespace Datafile Segment Segment
Extent
Blocks
Copyright 2009 Ferari Liu
#.22
初始化参数文件
在实例启动的时候要指定 两种类型的参数: 直接的 隐含的 可以存在多个参数文件 修改参数生效: PFILE SPFILE
#.23
PFILE initSID.ora
#.15
数据库写进程 (DBWn)
Instance SGA Database Buffer Cache
DBWn写的条件: DBWn写的条件: • • • • • • •