【IT168 专稿】在前面一系列的列式数据库评测文章中,我们介绍了6种列式数据库。从本文开始,我们将评测传统的行存储数据库,评测的重点仍然是tpc-h分析型查询,主要检验各种数据库在数据仓库方面的能力。我们从市场占有率最高的商业数据库Oracle开始。
一、数据库安装
Oracle在其官方技术网站上提供了Oracle 10g R2、11g R1、11g R2等各种版本软件的下载,这里也提供了文档在线浏览和下载,这为用户试用带来了方便,但值得一提的,虽然软件本身没有对功能和试用期限进行限制,但在用户协议中对用户的权利和义务有明确的约定,用户必须接受协议才能试用。由于Oracle已经宣布Oracle 10g R2、11g R1产品生命周期的结束日期,此后不再提供技术支持服务。通过文档我们了解到,企业版比标准版具有更多的高级功能,比如:分区、并行查询等,也具有更大的扩展性。因此我们采用11g R2企业版来做评测,以最大限度地了解这个产品的全部功能。在上述网站注册一个免费用户就可以下载安装文件。
Oracle 11.2支持的平台有windows 32位/64位、linux、Solaris、HP-UX 、AIX等10种。本次测试基于Intel Xeon 7550*8的PC服务器上用VMWare VSphere 4.1管理的虚拟机,虚拟机的逻辑CPU个数是8,内存 100GB,存储为8个300GB SAS本地磁盘,采用一块512M缓存RAID卡,按RAID5方式组成磁盘阵列。操作系统采用和RHEL 5相同的核心级别的RedFlag Asian Linux Sever 3.0 x64。因此选用的安装文件是64位x86 Linux版本,linux.x64_11gR2_database_1of2.zip和linux.x64_11gR2_database_2of2.zip,2个文件合计大约2.2G,必须都下载,然后解压缩到同一个目录才能执行安装。Oracle的安装在各种数据库当中算是比较复杂的,但由于Oracle的市场地位和流行程度,专门介绍安装的文档在互联网上也是不计其数。因此本文不准备详细介绍每个步骤,只说明一些初次使用者易错的关键步骤。更详细的步骤,参考官方安装文档。
在Linux环境进行Oracle安装的关键步骤有下面几步:
1、先决条件检查,检查内存、交换文件和临时文件目录大小以及操作系统版本是否符合Oracle安装的最低要求。
MemTotal: 103140528 kB
[root@redflag11012501 ~]# grep SwapTotal /proc/meminfo
SwapTotal: 5996536 kB
[root@redflag11012501 ~]# free
total used free shared buffers cached
Mem: 103140528 5758696 97381832 0 138936 5261496
-/+ buffers/cache: 358264 102782264
Swap: 5996536 0 5996536
[root@redflag11012501 ~]# df -h /dev/shm/
文件系统 容量 已用 可用 已用% 挂载点
tmpfs 50G 0 50G 0% /dev/shm
[root@redflag11012501 ~]# uname -m
x86_64
[root@redflag11012501 ~]# df -h /tmp
文件系统 容量 已用 可用 已用% 挂载点
/dev/mapper/VolGroup00-LogVol00
24G 5.4G 17G 25% /
[root@redflag11012501 ~]# df -h
文件系统 容量 已用 可用 已用% 挂载点
/dev/mapper/VolGroup00-LogVol00
24G 5.4G 17G 25% /
/dev/sda1 99M 13M 82M 14% /boot
tmpfs 50G 0 50G 0% /dev/shm
/dev/mapper/vg0-datalv
739G 4.9G 696G 1% /user1
[root@redflag11012501 ~]# cat /proc/version
Linux version 2.6.18-194.1.AXS3 (packager@asianux.com) (gcc version 4.1.2 20080704 (Asianux 3.0 4.1.2-48)) #1 SMP Fri May 7 10:03:53 CST 2010
[root@redflag11012501 ~]# uname -r
2.6.18-194.1.AXS3
2、创建操作系统oracle用户和组。并给oracle用户设置口令。
[root@redflag11012501 ~]# /usr/sbin/groupadd -g 502 dba
[root@redflag11012501 ~]# /usr/sbin/groupadd -g 503 oper
[root@redflag11012501 ~]# /usr/sbin/groupadd -g 504 asmadmin
[root@redflag11012501 ~]# /usr/sbin/groupadd -g 506 asmdba
[root@redflag11012501 ~]# /usr/sbin/groupadd -g 505 asmoper
[root@redflag11012501 ~]# /usr/sbin/useradd -u 502 -g oinstall -G dba,asmdba,oper oracle
[root@redflag11012501 ~]# passwd oracle
Changing password for user oracle.
New UNIX password:
BAD PASSWORD: it is based on a dictionary word
Retype new UNIX password:
passwd: all authentication tokens updated successfully.
3、设定oracle用户的资源限制。S表示软限制、H表示硬限制。
[oracle@redflag11012501 ~]$ ulimit -Sn 2048
[oracle@redflag11012501 ~]$ ulimit -Hn 65536
[oracle@redflag11012501 ~]$ ulimit -Su 16384
[oracle@redflag11012501 ~]$ ulimit -Hu 16384
[oracle@redflag11012501 ~]$ ulimit -Ss 10240
[oracle@redflag11012501 ~]$ ulimit -Hs unlimited
4、用root用户设定系统核心参数。从11.2开始,Oracle安装文件提供了自动修改某些参数的功能,因此这一步变得可选。可以查看原始参数的值。
kernel.sem = 256 32000 100 142
[root@redflag11012501 ~]# /sbin/sysctl -a | grep shm
vm.hugetlb_shm_group = 0
kernel.shmmni = 4096
kernel.shmall = 4294967296
kernel.shmmax = 68719476736
[root@redflag11012501 ~]# /sbin/sysctl -a | grep file-max
fs.file-max = 131072
5、创建安装二进制文件存放目录和数据库文件存放目录等,并改变属主为oracle。
[root@redflag11012501 ~]# chown -R oracle:oinstall /user1/app/oracle
[root@redflag11012501 ~]# chmod -R 775 /user1/app/oracle
[root@redflag11012501 ~]# mkdir -p /user1/app/oradata
[root@redflag11012501 ~]# chown -R oracle:oinstall /user1/app/oradata
[root@redflag11012501 ~]# chmod -R 775 /user1/app/oradata
[root@redflag11012501 ~]# mkdir -p /user1/app/recovery_area
[root@redflag11012501 ~]# chown -R oracle:oinstall /user1/app/recovery_area
[root@redflag11012501 ~]# chmod -R 775 /user1/app/recovery_area
6、用x图形界面工具登录。在图形终端中查看display的端口,并据此设定oracle用户DISPLAY环境变量,运行安装程序runInstaller,按界面提示操作。
name of display: 10.4.105.241:1.0
version number: 11.0
vendor string: NetSarang Computer, Inc.
vendor release number: 1391
...
[root@redflag11012501 ~]#
[root@redflag11012501 ~]# su - oracle
[oracle@redflag11012501 ~]$ export DISPLAY=10.4.105.241:1.0
[oracle@redflag11012501 ~]$ cd /user1/app/oradata/database
[oracle@redflag11012501 database]$ ./runInstaller
7、安装程序检查后自动生成了修改核心参数的脚本,需要用root用户执行。
/usr/bin/id
Response file being used is :/tmp/CVU_11.2.0.2.0_oracle/fixup.response
Enable file being used is :/tmp/CVU_11.2.0.2.0_oracle/fixup.enable
Log file location: /tmp/CVU_11.2.0.2.0_oracle/orarun.log
Setting Kernel Parameters...
fs.file-max = 131072
fs.file-max = 6815744
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_max=262144
net.core.rmem_max = 4194304
net.core.wmem_max=262144
net.core.wmem_max = 1048576
fs.aio-max-nr = 1048576
安装注意事项:
Oracle用一个安装包包括了标准版和企业版的功能,只要在安装类型选择企业版即可。
安装完数据库软件后,执行dbca创建数据库,注意选择类型为一般用途,SGA一般用默认的物理内存的40%即可,不必设得过大,因为操作系统需要部分内存作文件缓存,如果Oracle占用过大,就会影响操作系统的操作,不但不能提高性能,反而会降低性能。用netca创建监听和服务。就可以进行一般的测试了。