当前位置:首页 » 数据仓库 » 数据库运行机制
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

数据库运行机制

发布时间: 2022-10-02 09:24:08

数据库和服务器有什么区别,请解释下

二者的主要区别在于:

服务器:是回应运用软件的总站点,它提供软件的数据收集和处理。服务器通常情况是一台(或台)电脑构成,通过网络与应用软件(客户湍)连接。它硬件珥软件、网络的结合体。

数据库:是存贮信息数据的软件,它有多种。大型的MSsql,放在服务器上,同时需要数据库软件提供应用操作。小型的放在个体电脑上即可。

(1)数据库运行机制扩展阅读:

数据库服务器由运行在局域网中的一台/多台计算机和数据库管理系统软件共同构成,数据库服务器为客户应用程序提供数据服务。

数据库服务器建立在数据库系统基础上,具有数据库系统的特性,且有其独特的—面。主要功能如下:

1、数据库管理功能,包括系统配置与管理、数据存取与更新管理、数据完整性管理和数据安全性管理;

2、数据库的查询和操纵功能 ,该功能包括数据库检索和修改;

3、数据库维护功能,包括数据导入/导出管理,数据库结构维护、数据恢复功能和性能监测;

4、数据库并行运行,由于在同一时间,访问数据库的用户不止一个,所以数据库服务器必须支持并行运行机制,处理多个事件的同时发生。

参考资料:网络-数据库服务器

    ② 数据库老师会问哪些问题

    1.MySQL 主键与索引的联系与区别

    主键是为了标识数据库记录唯一性,不允许记录重复,且键值不能为空,主键也是一个特殊索引。

    数据表中只允许有一个主键,但是可以有多个索引。

    使用主键会数据库会自动创建主索引,也可以在非主键上创建索引,方便查询效率。

    索引可以提高查询速度,它就相当于字典的目录,可以通过它很快查询到想要的结果,而不需要进行全表扫描。

    主键索引外索引的值可以为空。

    主键也可以由多个字段组成,组成复合主键,同时主键肯定也是唯一索引。

    唯一索引则表示该索引值唯一,可以由一个或几个字段组成,一个表可以有多个唯一索引。

    2.数据库索引是怎么回事?用的啥数据结构 为什么B+树比B树更合适

    一个索引是存储的表中一个特定列的值数据结构(最常见的是B-Tree)。索引是在表的列上创建。所以,要记住的关键点是索引包含一个表中列的值,并且这些值存储在一个数据结构中。请记住记住这一点:索引是一种数据结构 。

    什么样的数据结构可以作为索引?

    B-Tree 是最常用的用于索引的数据结构。因为它们是时间复杂度低, 查找、删除、插入操作都可以可以在对数时间内完成。另外一个重要原因存储在B-Tree中的数据是有序的。数据库管理系统(RDBMS)通常决定索引应该用哪些数据结构。但是,在某些情况下,你在创建索引时可以指定索引要使用的数据结构。

    当我们利用索引查询的时候,不可能把整个索引全部加载到内存,只能逐一加载每个磁盘页,磁盘页对应索引树的节点。那么Mysql衡量查询效率的标准就是磁盘IO次数。如果我们利用二叉树作为索引结构,那么磁盘的IO次数和索引树的高度是相关的。

    那么为了提高查询效率,就需要减少磁盘IO数。为了减少磁盘IO的次数,就需要尽量降低树的高度,需要把原来“瘦高”的树结构变的“矮胖”,树的每层的分叉越多越好,因此B树正好符合我们的要求,这也是B-树的特征之一。

    B树 B树的节点为关键字和相应的数据(索引等)

    B+树 B+树是B树的一个变形,非叶子节点只保存索引,不保存实际的数据,数据都保存在叶子节点中,B+树的叶子节点为链表,链表放数据,非叶子节点是索引。

    对比:

    • B树和B+树同样适用于高度越低,查询越快。

    • B树查找节点,B+树只需要查询所有节点(索引),B树查询索引和数据。虽然可能第一个就找到,但在极端情况下,需要全查询索引和数据,不如B+树稳定。

    • B+树和B树比,B+树的硬盘空间更少,io的读写代价更低。因为B+树节点只有索引,占位更少。在查询的情况下硬盘指针移动更低

    • 哈希表索引是怎么工作的?

      哈希表是另外一种你可能看到用作索引的数据结构-这些索引通常被称为哈希索引。使用哈希索引的原因是,在寻找值时哈希表效率极高。所以,如果使用哈希索引,对于比较字符串是否相等的查询能够极快的检索出的值。例如之前我们讨论过的这个查询(SELECT * FROM Employee WHERE Employee_Name = ‘Jesus’) 就可以受益于创建在Employee_Name 列上的哈希索引。哈系索引的工作方式是将列的值作为索引的键值(key),和键值相对应实际的值(value)是指向该表中相应行的指针。因为哈希表基本上可以看作是关联数组,一个典型的数据项就像“Jesus => 0x28939″,而0x28939是对内存中表中包含Jesus这一行的引用。在哈系索引的中查询一个像“Jesus”这样的值,并得到对应行的在内存中的引用,明显要比扫描全表获得值为“Jesus”的行的方式快很多。

      哈希索引的缺点

      哈希表是无顺的数据结构,对于很多类型的查询语句哈希索引都无能为力。举例来说,假如你想要找出所有小于40岁的员工。你怎么使用使用哈希索引进行查询?这不可行,因为哈希表只适合查询键值对-也就是说查询相等的查询(例:like “WHERE name = ‘Jesus’)。哈希表的键值映射也暗示其键的存储是无序的。这就是为什么哈希索引通常不是数据库索引的默认数据结构-因为在作为索引的数据结构时,其不像B-Tree那么灵活

      3.创建索引的注意事项

      索引可以提高数据的访问速度,但同时也增加了插入、更新和删除操作的处理时间,解决此问题就是分析应用程序的业务处理、数据使用,为经常被用作查询条件、或者被要求排序的字段建立索引。索引是建立在数据库表中的某些列的上面。因此,在创建索引的时候,应该仔细考虑在哪些列上可以创建索引,在哪些列上不能创建索引。

      创建规则:

    • 表的主键、外键必须有索引;

    • 数据量超过300的表应该有索引;

    • 经常与其他表进行连接的表,在连接字段上应该建立索引;

    • 经常出现在Where子句中的字段,特别是大表的字段,应该建立索引;

    • 索引应该建在选择性高的字段上;

    • 索引应该建在小字段上,对于大的文本字段甚至超长字段,不要建索引;

    • 复合索引的建立需要进行仔细分析;尽量考虑用单字段索引代替

    • 频繁进行数据操作的表,不要建立太多的索引;

    • 删除无用的索引,避免对执行计划造成负面影响;

    • 创建索引需要注意的地方:

    • 限制表上的索引数目。对一个存在大量更新操作的表,所建索引的数目一般不要超过3个,最多不要超过5个。索引虽说提高了访问速度,但太多索引会影响数据的更新操作。

    • 避免在取值朝一个方向增长的字段(例如:日期类型的字段)上,建立索引;对复合索引,避免将这种类型的字段放置在最前面

    • 对复合索引,按照字段在查询条件中出现的频度建立索引

    • 删除不再使用,或者很少被使用的索引。

    • 4.MYSQL事务特性和实现原理

      ACID表示原子性(atomicity)、一致性(consistency)、隔离性(isolation)和持久性(rability)。一个很好的事务处理系统,必须具备这些标准特性:

      原子性(atomicity)

      一个事务必须被视为一个不可分割的最小工作单元,整个事务中的所有操作要么全部提交成功,要么全部失败回滚,对于一个事务来说,不可能只执行其中的一部分操作,这就是事务的原子性

      是利用Innodb的undo log。undo log名为回滚日志,是实现原子性的关键,当事务回滚时能够撤销所有已经成功执行的sql语句,他需要记录你要回滚的相应日志信息。

      一致性(consistency)

      数据库总是从一个一致性的状态转换到另一个一致性的状态。(在前面的例子中,一致性确保了,即使在执行第三、四条语句之间时系统崩溃,支票账户中也不会损失200美元,因为事务最终没有提交,所以事务中所做的修改也不会保存到数据库中。)

      数据库通过原子性、隔离性、持久性来保证一致性

      隔离性(isolation)

      通常来说,一个事务所做的修改在最终提交以前,对其他事务是不可见的。(在前面的例子中,当执行完第三条语句、第四条语句还未开始时,此时有另外的一个账户汇总程序开始运行,则其看到支票帐户的余额并没有被减去200美元。)

      利用的是锁和MVCC机制。MVCC,即多版本并发控制(Multi Version Concurrency Control),一个行记录数据有多个版本对快照数据,这些快照数据在undo log中。如果一个事务读取的行正在做DELELE或者UPDATE操作,读取操作不会等行上的锁释放,而是读取该行的快照版本。

      持久性(rability)

      一旦事务提交,则其所做的修改会永久保存到数据库。(此时即使系统崩溃,修改的数据也不会丢失。持久性是个有占模糊的概念,因为实际上持久性也分很多不同的级别。有些持久性策略能够提供非常强的安全保障,而有些则未必,而且不可能有能做到100%的持久性保证的策略。)

      是利用Innodb的redo log。当做数据修改的时候,不仅在内存中操作,还会在redo log中记录这次操作。当事务提交的时候,会将redo log日志进行刷盘(redo log一部分在内存中,一部分在磁盘上)。当数据库宕机重启的时候,会将redo log中的内容恢复到数据库中,再根据undo log和binlog内容决定回滚数据还是提交数据。redo log体积小,刷盘快。redo log是一直往末尾进行追加,属于顺序IO。效率显然比随机IO来的快

      5.redis的原理和优点

      redis是一个key-value存储系统.和Memcached类似,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)、zset(sorted set --有序集合)和hashs(哈希类型)

      这些数据类型都支持push/pop、add/remove及取交集并集和差集及更丰富的操作,而且这些操作都是原子性的.

      在此基础上,redis支持各种不同方式的排序.与memcached一样,为了保证效率,数据都是缓存在内存中.区别的是redis会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件,并且在此基础上实现了master-slave(主从)同步.

      Redis的优点:

    • 性能极高 – Redis能支持超过 100K+ 每秒的读写频率。

    • 丰富的数据类型 – Redis支持二进制案例的 Strings, Lists, Hashes, Sets 及 Ordered Sets 数据类型操作。

    • 原子 – Redis的所有操作都是原子性的,同时Redis还支持对几个操作全并后的原子性执行。

    • 丰富的特性 – Redis还支持 publish/subscribe, 通知, key 过期等等特性。

    • 6.Mysql中的锁机制

      Mysql用到了很多这种锁机制,比如行锁,表锁等,读锁,写锁等,都是在做操作之前先上锁。这些锁统称为悲观锁

      MySQL的锁机制比较简单,其最 显着的特点是不同的存储引擎支持不同的锁机制。比如,MyISAM和MEMORY存储引擎采用的是表级锁(table-level locking);BDB存储引擎采用的是页面锁(page-level locking),但也支持表级锁;InnoDB存储引擎既支持行级锁(row-level locking),也支持表级锁,但默认情况下是采用行级锁。

    • 表级锁:开销小,加锁快;不会出现死锁;锁定粒度大,发生锁冲突的概率最高,并发度最低。

    • 行级锁:开销大,加锁慢;会出现死锁;锁定粒度最小,发生锁冲突的概率最低,并发度也最高。

    • 页面锁:开销和加锁时间界于表锁和行锁之间;会出现死锁;锁定粒度界于表锁和行锁之间,并发度一般

    • 从上述特点可见,很难笼统地说哪种锁更好,只能就具体应用的特点来说哪种锁更合适!仅从锁的角度 来说:表级锁更适合于以查询为主,只有少量按索引条件更新数据的应用,如Web应用;而行级锁则更适合于有大量按索引条件并发更新少量不同数据,同时又有 并发查询的应用,如一些在线事务处理(OLTP)系统。

      7.ABC联合索引生效问题

      对于复合索引:Mysql从左到右的使用索引中的字段,一个查询可以只使用索引中的一部份,但只能是最左侧部分。例如索引是key index (a,b,c)。 可以支持a | a,b| a,b,c 3种组合进行查找,但不支持 b,c进行查找 .当最左侧字段是常量引用时,索引就十分有效。

      对于复合索引:Mysql从左到右的使用索引中的字段,一个查询可以只使用索引中的一部份,但只能是最左侧部分。例如索引是key index (a,b,c)。 可以支持a | a,b| a,b,c 3种组合进行查找,但不支持 b,c进行查找 .当最左侧字段是常量引用时,索引就十分有效。

    ③ MySql的MySql Administrator,MySql Migration ToolKit是干么用得想学下MySql一窥数据库的运行机制。。

    MySql Administrator是mysql的图形化管理器(就是类似于sql server的企业管理器),用它可以来管理和控制数据库,类似的软件非常多,比如MySQL Front之类的。

    MySQL Migration Toolkit是mysql官方提供的数据库移植工具,可以将任何数据源转换成mysql的数据,也可以将mysql的数据转换成其它类型的数据。 详见http://hi..com/bigbig_88/blog/item/4c4041edfb6bdf07fcfa3c6e.html

    ④ 页面、服务器、数据库的调用传输机制是什么样的

    服务器--数据库--服务器--页面。服务器是指前端提供调用web服务的服务器,如iis、tomcat等,实际运行时的传输机制是:应用服务器中的业务访问数据库服务器中的数据并对返回的结果进行处理,而web服务器提供调用web服务,并对页面进行展现。

    ⑤ 数据库服务器的功能

    数据库服务器建立在数据库系统基础上,具有数据库系统的特性,且有其独特的—面。主要功能如下: 数据库管理功能,包括系统配置与管理、数据存取与更新管理、数据完整性管理和数据安全性管理。 数据库的查询和操纵功能 ,该功能包括数据库检索和修改。 数据库维护功能,包括数据导入/导出管理,数据库结构维护、数据恢复功能和性能监测。 数据库并行运行,由于在同一时间,访问数据库的用户不止一个,所以数据库服务器必须支持并行运行机制,处理多个事件的同时发生。

    ⑥ 数据库缓存机制是什么缓存是如何作用数据库

    缓存的介质一般是内存,所以读写速度很快。但如果缓存中存放的数据量非常大时,也会用硬盘作为缓存介质。缓存的实现不仅仅要考虑存储的介质,还要考虑到管理缓存的并发访问和缓存数据的生命周期。

    ⑦ 数据库的运行管理主要功能

    数据库管理系统(database management system)是一种操纵和管理数据库的大型软件,是用于建立、使用和维护数据库,简称dbms。它对数据库进行统一的管理和控制,以保证数据库的安全性和完整性。用户通过dbms访问数据库中的数据,数据库管理员也通过dbms进行数据库的维护工作。它提供多种功能,可使多个应用程序和用户用不同的方法在同时或不同时刻去建立,修改和询问数据库。它使用户能方便地定义和操纵数据,维护数据的安全性和完整性,以及进行多用户下的并发控制和恢复数据库。

    按功能划分,数据库管理系统大致可分为6个部分:

    (1)模式翻译:提供数据定义语言(ddl)。用它书写的数据库模式被翻译为内部表示。数据库的逻辑结构、完整性约束和物理储存结构保存在内部的数据字典中。数据库的各种数据操作(如查找、修改、插入和删除等)和数据库的维护管理都是以数据库模式为依据的。

    (2)应用程序的编译:把包含着访问数据库语句的应用程序,编译成在dbms支持下可运行的目标程序。

    (3)交互式查询:提供易使用的交互式查询语言,如sql。dbms负责执行查询命令,并将查询结果显示在屏幕上。

    (4)数据的组织与存取:提供数据在外围储存设备上的物理组织与存取方法。

    ⑸事务运行管理:提供事务运行管理及运行日志,事务运行的安全性监控和数据完整性检查,事务的并发控制及系统恢复等功能。

    (6)数据库的维护:为数据库管理员提供软件支持,包括数据安全控制、完整性保障、数据库备份、数据库重组以及性能监控等维护工具。

    基于关系模型的数据库管理系统已日臻完善,并已作为商品化软件广泛应用于各行各业。它在各户服务器结构的分布式多用户环境中的应用,使数据库系统的应用进一步扩展。随着新型数据模型及数据管理的实现技术的推进,可以预期dbms软件的性能还将更新和完善,应用领域也将进一步地拓宽。

    它所提供的功能有以下几项:
    (1)数据定义功能。DBMS提供相应数据语言来定义(DDL)数据库结构,它们是刻画数据库框架,并被保存在数据字典中。
    (2)数据存取功能。DBMS提供数据操纵语言(DML),实现对数据库数据的基本存取操作:检索,插入,修改和删除。
    (3)数据库运行管理功能。DBMS提供数据控制功能,即是数据的安全性、完整性和并发控制等对数据库运行进行有效地控制和管理,以确保数据正确有效。
    (4)数据库的建立和维护功能。包括数据库初始数据的装入,数据库的转储、恢复、重组织,系统性能监视、分析等功能。
    (5)数据库的传输。DBMS提供处理数据的传输,实现用户程序与DBMS之间的通信,通常与操作系统协调完成。

    着名数据库管理系统

    MS SQL
    SYBASE
    DB2
    ORACLE
    MySQL
    ACCESS
    VF

    常见的数据库管理系统

    目前有许多数据库产品,如Oracle、Sybase、Informix、Microsoft SQL Server、Microsoft Access、Visual FoxPro等产品各以自己特有的功能,在数据库市场上占有一席之地。下面简要介绍几种常用的数据库管理系统。

    Oracle
    Oracle是一个最早商品化的关系型数据库管理系统,也是应用广泛、功能强大的数据库管理系统。Oracle作为一个通用的数据库管理系统,不仅具有完整的数据管理功能,还是一个分布式数据库系统,支持各种分布式功能,特别是支持Internet应用。作为一个应用开发环境,Oracle提供了一套界面友好、功能齐全的数据库开发工具。Oracle使用PL/SQL语言执行各种操作,具有可开放性、可移植性、可伸缩性等功能。特别是在Oracle 8i中,支持面向对象的功能,如支持类、方法、属性等,使得Oracle 产品成为一种对象/关系型数据库管理系统。

    Microsoft SQL Server
    Microsoft SQL Server是一种典型的关系型数据库管理系统,可以在许多操作系统上运行,它使用Transact-SQL语言完成数据操作。由于Microsoft SQL Server是开放式的系统,其它系统可以与它进行完好的交互操作。目前最新版本的产品为Microsoft SQL Server 2000,它具有可靠性、可伸缩性、可用性、可管理性等特点,为用户提供完整的数据库解决方案。

    Microsoft Office
    作为Microsoft Office组件之一的Microsoft Access是在Windows环境下非常流行的桌面型数据库管理系统。使用Microsoft Access无需编写任何代码,只需通过直观的可视化操作就可以完成大部分数据管理任务。在Microsoft Access数据库中,包括许多组成数据库的基本要素。这些要素是存储信息的表、显示人机交互界面的窗体、有效检索数据的查询、信息输出载体的报表、提高应用效率的宏、功能强大的模块工具等。它不仅可以通过ODBC与其它数据库相连,实现数据交换和共享,还可以与Word、Excel等办公软件进行数据交换和共享,并且通过对象链接与嵌入技术在数据库中嵌入和链接声音、图像等多媒体数据。

    数据库管理系统选择原则

    选择数据库管理系统时应从以下几个方面予以考虑:

    (1) 构造数据库的难易程度。
    需要分析数据库管理系统有没有范式的要求,即是否必须按照系统所规定的数据模型分析现实世界,建立相应的模型;数据库管理语句是否符合国际标准,符合国际标准则便于系统的维护、开发、移植;有没有面向用户的易用的开发工具;所支持的数据库容量,数据库的容量特性决定了数据库管理系统的使用范围。

    (2) 程序开发的难易程度。
    有无计算机辅助软件工程工具CASE——计算机辅助软件工程工具可以帮助开发者根据软件工程的方法提供各开发阶段的维护、编码环境,便于复杂软件的开发、维护。有无第四代语言的开发平台——第四代语言具有非过程语言的设计方法,用户不需编写复杂的过程性代码,易学、易懂、易维护。有无面向对象的设计平台——面向对象的设计思想十分接近人类的逻辑思维方式,便于开发和维护。对多媒体数据类型的支持——多媒体数据需求是今后发展的趋势,支持多媒体数据类型的数据库管理系统必将减少应用程序的开发和维护工作。

    (3) 数据库管理系统的性能分析。
    包括性能评估(响应时间、数据单位时间吞吐量)、性能监控(内外存使用情况、系统输入/输出速率、SQL语句的执行,数据库元组控制)、性能管理(参数设定与调整)。

    (4) 对分布式应用的支持。
    包括数据透明与网络透明程度。数据透明是指用户在应用中不需指出数据在网络中的什么节点上,数据库管理系统可以自动搜索网络,提取所需数据;网络透明是指用户在应用中无需指出网络所采用的协议。数据库管理系统自动将数据包转换成相应的协议数据。

    (5) 并行处理能力。
    支持多CPU模式的系统(SMP,CLUSTER,MPP),负载的分配形式,并行处理的颗粒度、范围。

    (6) 可移植性和可括展性。
    可移植性指垂直扩展和水平扩展能力。垂直扩展要求新平台能够支持低版本的平台,数据库客户机/服务器机制支持集中式管理模式,这样保证用户以前的投资和系统;水平扩展要求满足硬件上的扩展,支持从单CPU模式转换成多CPU并行机模式( SMP, CLUSTER, MPP)

    (7) 数据完整性约束。
    数据完整性指数据的正确性和一致性保护,包括实体完整性、参照完整性、复杂的事务规则。

    (8) 并发控制功能。
    对于分布式数据库管理系统,并发控制功能是必不可少的。因为它面临的是多任务分布环境,可能会有多个用户点在同一时刻对同一数据进行读或写操作,为了保证数据的一致性,需要由数据库管理系统的并发控制功能来完成。评价并发控制的标准应从下面几方面加以考虑:

    保证查询结果一致性方法
    数据锁的颗粒度(数据锁的控制范围,表、页、元组等)
    数据锁的升级管理功能
    死锁的检测和解决方法

    (9) 容错能力。
    异常情况下对数据的容错处理。评价标准:硬件的容错,有无磁盘镜象处理功能软件的容错,有无软件方法异常情况的容错功能

    (10) 安全性控制
    包括安全保密的程度(帐户管理、用户权限、网络安全控制、数据约束)

    (11) 支持汉字处理能力
    包括数据库描述语言的汉字处理能力(表名、域名、数据)和数据库开发工具对汉字的支持能力。

    ⑧ 数据库连接池的工作机制是什么

    为什么要使用数据库连接池?
    答:
    由于创建连接的代价是很高的, 我们每次访问数据库都重新创建连接的话是非常消耗性的.

    我们可以再程序启动的时候先创建出一些连接, 放在一个集合中, 访问数据库的时候从集合中获取, 使用结束再放回集合中.

    这样做只是在程序启动的时候消耗性能去创建连接, 每次访问数据库的时候都是从内存中获取连接, 可以大大提升效率.

    注意事项:
    由于池中增删非常频繁, 使用集合LinkedList效率较高
    集合中所有连接都被占用时创建新连接, 但需要注意连接总数
    使用组合模式/动态代理处理释放连接的方法, 当运行close方法时, 将连接放回池中
    关于数据库连接池:
    数据库连接是一种关键的有限的昂贵的资源,这一点在多用户的网页应用程序中体现得尤为突出。对数据库连接的管理能显着影响到整个应用程序的伸缩性和健壮性,影响到程序的性能指标。数据库连接池正是针对这个问题提出来的。

    数据库连接池负责分配、管理和释放数据库连接,它允许应用程序重复使用一个现有的数据库连接,而再不是重新建立一个;释放空闲时间超过最大空闲时间的数据库连接来避免因为没有释放数据库连接而引起的数据库连接遗漏。这项技术能明显提高对数据库操作的性能。

    数据库连接池在初始化时将创建一定数量的数据库连接放到连接池中,这些数据库连接的数量是由最小数据库连接数来设定的。无论这些数据库连接是否被 使用,连接池都将一直保证至少拥有这么多的连接数量。连接池的最大数据库连接数量限定了这个连接池能占有的最大连接数,当应用程序向连接池请求的连接数超 过最大连接数量时,这些请求将被加入到等待队列中。

    数据库连接池的最小连接数和最大连接数的设置要考虑到下列几个因素:
    1) 最小连接数是连接池一直保持的数据库连接,所以如果应用程序对数据库连接的使用量不大,将会有大量的数据库连接资源被浪费;
    2) 最大连接数是连接池能申请的最大连接数,如果数据库连接请求超过此数,后面的数据库连接请求将被加入到等待队列中,这会影响之后的数据库操作。
    3) 如果最小连接数与最大连接数相差太大,那么最先的连接请求将会获利,之后超过最小连接数量的连接请求等价于建立一个新的数据库连接。不过,这些大于最小连接数的数据库连接在使用完不会马上被释放,它将被放到连接池中等待重复使用或是空闲超时后被释放。

    J2EE服务器启动时会建立一定数量的池连接,并一直维持不少于此数目的池连接。

    调用:客户端程序需要连接时,池驱动程序会返回一个未使用的池连接并将其表记为 忙。如果当前没有空闲连接,池驱动程序就新建一定数量的连接,新建连接的数量有配置参数决定。
    释放:当使用的池连接调用完成后,池驱动程序将此连接表记为空闲, 其他调用就可以使用这个连接

    ⑨ oracle数据库的failover是什么意思,工作机制是什么

    数据库Failover:FailOver中文为故障切换。Dataguard方式的一种切换模式,是不可逆的。当主数据库发生宕机,且不能及时恢复时,Oracle会丢弃主数据库,将备用数据库转变为主数据库。当
    failover之后,备用数据库变成为主数据库,从而丢失了备用数据库的所有能力,也就是说,不能再返回到备用模式。
    Failover
    有以下特点:
    主数据库offline,备用数据库online,这种操作由系统和软件失败引起。
    即使在备用数据库上应用重做日志,也可能出现数据丢失的现象,除非备
    用数据库运行在guaranteed
    protection模式下。
    原主数据库重新使用时必须reinstantiated(start
    instance)。
    其它的备用数据库也需reinstantiated。
    在主数据库正常工作时,Oracle
    允许
    DBA
    将主数据库切换到备用数据库,此备用数据库变为主数据库,而原主数据库变为备用数据库。
    数据库的切换可以从主数据库角色切换到备用数据库角色,也可从备用数据库角色切换到主数据库角色。

    ⑩ 在数据库服务器直接查询能留下痕迹吗

    能。
    数据库服务器是联系Web服务器与DBMS的中间件是负责处理所有的应用程序服务器,包括在web服务器和后台的应用程序或数据库之间的事务处理和数据访问。
    数据库服务器建立在数据库系统基础上,具有数据库系统的特性,且有其独特的—面。主要功能如下:
    数据库管理功能,包括系统配置与管理、数据存取与更新管理、数据完整性管理和数据安全性管理。
    数据库的查询和操纵功能,该功能包括数据库检索和修改。
    数据库维护功能,包括数据导入/导出管理,数据库结构维护、数据恢复功能和性能监测。
    数据库并行运行,由于在同一时间,访问数据库的用户不止一个,所以数据库服务器必须支持并行运行机制,处理多个事件的同时发生。