Oracle和SQLserver
Oracle和SQLserver区别,网上查了查,大致如下。 1、从平台的适应性来说。 Oracle支持多种操作系统,而sql server只支持windows。 2、从我们使用数据库的角度来讲。 Oracle给dba更多的灵活性,可以根据实际情况调整参数,使应用性能最佳,但是缺点就是很难上
Oracle和SQLserver区别,网上查了查,大致如下。
1、从平台的适应性来说。
Oracle支持多种操作系统,而sql server只支持windows。
2、从我们使用数据库的角度来讲。
Oracle给dba更多的灵活性,可以根据实际情况调整参数,使应用性能最佳,但是缺点就是很难上手。sqlserver则相反,较容易上手。
3、从数据库系统的体系结构来讲。
Oracle的文件体系结构为:
数据文件:.dbf(真实数据)。
日志文件:rdo
控制文件:ctl
参数文件:ora
SqlServer的文件体系结构为:
.mdf(数据字典)
.ndf(数据文件)
.ldf(日志文件)
4、从存储结构上来讲。
Oracle存储结构:
Oracle里面两个参数块pctfree(填充因子)和pctused(复用因子),可控制块本身何时有,何时没有足够的空间接受新信息(对块的存储情况分析机制)。
这样可以降低数据行连接于行迁移的可能性。块的大小可以设置(olp块和dss块)。
在Oracle中,将连续的块组成区,可动态分配区(区的分配是等额的也可以使自增长的)可减少空间分配次数。
在Oracle里表可以分为多个段,段由多个区组成,每个段可指定分配在哪个表空间里(段的类型分为:数据段、索引段、回滚段、临时段、cash段)。Oracle里还可以对表进行分区,可以按照用户定义的业务规则、条件或规范,物理的分开磁盘上的数据。这样大大的降低了磁盘争用的可能性。
Oracle有七个空基本表空间:
.system表空间(存放数据字典和数据管理自身所需的信息)。
.temp临时表空间。
.tools交互式表空间。
.users用户默认表空间。
.indx索引表空间。
.dbsys福数据表空间
不同的数据存放在不同的表空间,在Oracle里基表是加密存储,任何人都无法访问。只能通过用户可视视图查看。
SqlServer存储结构:
以页为最小分配单位,每个页8K,可将8个连续的页组成一个“扩展”,以进一步减少分配时所消耗的资源。在SqlServer中数据以表的方式存放,而表是存放在数据库里。
sqlserver有五个基本数据库:
.master(数据字典)
.mode(存放样版)
.tempdb(临时数据库)
.msdb(存放调度信息和日志信息)
.pubs(示例数据库)
真实数据与数据字典存放在一起,对系统参数信息无安全机制。
5、登入管理。
Oracle登入管理:
.system/manager(初始账户)
.sys/change_on_nstall
.install/oracle(安装账户)
.scott/tiger(示例数据库,测试用)
在oracle里默认的只有三个系统用户,oracle是通过用户登录。
Sqlserver登入管理:
.sqlserver 身份验证。
.windows身份验证。
在sqlserver中是通过对windows用户账户或是用sqlserver身份验证连接数据库的。
6、本质。
sqlserver不是一种语言,和oracle数据库一样传输指令的一种方式。而sql是一种结构化查询语言,oracle的结构化查询语言类似sql。
7、从语言语法上。
sql中的null既不是字符也不是数字,它是缺省值,而oracle提供了nvl函数来解决。
oracle中的字符串连接为string1||string2 ,sql中为string1+string2.
集合操作:在sql中只有union,oracle中包含minus(差操作)、interect(交操作)、union(并操作)
索引:sql索引分为聚集索引和非聚集索引,还包括全文索引。
oracle中的索引包括:b+索引,bitmap位图索引,函数索引,反序索引,主键索引,散列索引,本地索引。
数据类型:
Oracle中的数据类型比较复杂,有基本的数据类型,衍生型,列对象型,结构体型;
sql中的数据比较简单,只有一些简单的基本数据数据类型无法提供事务操作。
事务:
在sql中如果一个事务从开始执行到结束时错了,就会回滚到开始之前。
在oracle中它采用的是定点回滚,就是该事务函数化和精确的错误定位,用savepoint标记保存点,用rollback标记回滚错误的保存点。
游标:
在sql中游标的使用比较复杂,不能同时打开一个以上的游标,因为它只是一个全局变量。@@fast_statues而且声明游标也麻烦,关闭游标时也不清除内存的。
oracle中的游标是提高速度全部统一的单项游标,可以允许用户异步读取,而且声明比较简单,就一句declare cursor 游标名 is select 语句就可以了。
容错机制:
sql中的错误机制比较复杂,没有提供错误描述;Oracle中的容错类型有三种,一个是预定义错误,一个是非预定义错误,一个是用户自定义,其中在自定义错误中它有两个slq是不同的,那是sqlcode错误号、sqlerrm错误描述。
8、安全性。
sqlserver没有获得任何安全证书。oracle server获得最高认证级别的ISO标准认证。DB2获得最高认证级别的ISO标准认证。
9、性能。
sqlserver多用户性能不佳。
oracle性能最高,保持windowsNT下的TPC-D和TPC-C的世界纪录。
DB2适用于数据仓库和在线事务处理性能较高。
10、客户端支持及应用模式。
sql serverCS结构,只支持windows客户,可以用ADO,DAO,LOEDB,ODBC连接。
oracle多层次网络计算,支持多种工业标准,可以用ODBC,JDBC,OCI等网络客户连接。
DB2 是跨平台的,多层结构,支持ODBC,JDBC等客户。
11、操作复杂和简单上。
sqlserver操作简单,但只有图形界面。
oracle较复杂,同时提供GUI和命令行,在windowsNT和unix下操作相同。
DB2 操作简单,同时提供GUI和命令行,在windowsNT和unix下操作相同。
12、使用风险。
sqlserver完全重写的代码,经历了长期的测试,不断延迟,许多功能需要时间来证明,并不十分兼容早起的产品。使用需要风险。
Oracle长时间的开发经验,完全向下兼容。得到广泛的应用,完全几乎没有风险。
DB2巨型企业广泛应用,向下兼容性好,风险小。
对于初学oracle大概了解,以后在使用的过程中再和sqlserver进行比较和总结。
自:http://www.2cto.com/database/201207/144792.html

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

Oracle 数据库日志的保留期限取决于日志类型和配置,包括:重做日志:由 "LOG_ARCHIVE_DEST" 参数配置的最大大小决定。归档重做日志:由 "DB_RECOVERY_FILE_DEST_SIZE" 参数配置的最大大小决定。在线重做日志:不归档,在数据库重启时丢失,保留期限与实例运行时间一致。审计日志:由 "AUDIT_TRAIL" 参数配置,默认保留 30 天。

Oracle 中计算两个日期之间天数的函数是 DATEDIFF()。具体用法如下:指定时间间隔单位:interval(如 day、month、year)指定两个日期值:date1 和 date2DATEDIFF(interval, date1, date2) 返回天数差

Oracle 数据库启动顺序为:1. 检查前置条件;2. 启动监听器;3. 启动数据库实例;4. 等待数据库打开;5. 连接到数据库;6. 验证数据库状态;7. 启用服务(如果需要);8. 测试连接。

Oracle 中的 INTERVAL 数据类型用于表示时间间隔,语法为 INTERVAL <精度> <单位>,可使用加减乘除运算操作 INTERVAL,适用于存储时间数据、计算日期差值等场景。

要在 Oracle 中查找字符出现的次数,执行以下步骤:获取字符串的总长度;获取字符所在子字符串的长度;计算字符出现的次数:用总长度减去子字符串长度。

Oracle 数据库服务器硬件配置要求:处理器:多核,主频至少 2.5 GHz,大型数据库建议 32 核以上。内存:小型数据库至少 8GB,中等规模 16-64GB,大型数据库或高负载工作负载高达 512GB 或更多。存储:SSD 或 NVMe 磁盘,RAID 阵列提高冗余和性能。网络:高速网络(10GbE 或更高),专用网卡,低延迟网络。其他:稳定电源、冗余组件、兼容操作系统和软件、散热和冷却系统。

Oracle 所需内存量取决于数据库大小、活动水平和所需性能水平:用于存储数据缓冲区、索引缓冲区、执行 SQL 语句和管理数据字典缓存。具体数量受数据库大小、活动水平和所需性能水平影响。最佳实践包括设置适当的 SGA 大小、调整 SGA 组件大小、使用 AMM 和监控内存使用情况。

Oracle 中替换字符串的方法是使用 REPLACE 函数,该函数的语法为:REPLACE(string, search_string, replace_string)。使用步骤:1. 识别要替换的子字符串;2. 确定替换子字符串的新字符串;3. 使用 REPLACE 函数进行替换。高级用法包括:多个替换、大小写敏感、特殊字符替换等。
