Oracle简介
Oracle Database,又名Oracle RDBMS,或简称Oracle。是甲骨文公司的一款关系数据库管理系统。它是在数据库领域一直处于领先地位的产品。可以说Oracle数据库系统是目前世界上流行的关系数据库管理系统,系统可移植性好、使用方便、功能强,适用于各类大、中、小、微机环境。它是一种高效率、可靠性好的 适应高吞吐量的数据库解决方案。
优点: 1、可用性强
2、可扩展性强
3、数据安全性强
4、稳定性强
Oracle逻辑结构
它由至少一个表空间和数据库模式对象组成。这里,模式是对象的集合,而模式对象是直接引用数据库数据的逻辑结构。
模式对象包括这样一些结构:表、视图、序列、存储过程、同义词、索引、簇和数据库链等。逻辑存储结构包括表空间、段和范围,用于描述怎样使用数据库的物理空间。
总之,逻辑结构由逻辑存储结构(表空间,段,范围,块)和逻辑数据结构(表、视图、序列、存储过程、同义词、索引、簇和数据库链等)组成,而其中的模式对象(逻辑数据结构)和关系形成了数据库的关系设计。
段:是表空间中一个指定类型的逻辑存储结构,它由一个或多个范围组成,段将占用并增长存储空间。
段中包括:
数据段:用来存放表数据;
索引段:用来存放表索引;
临时段:用来存放中间结果;
回滚段:用于出现异常时,恢复事务,事物回滚。
范围:是数据库存储空间分配的逻辑单位,一个范围由许多连续的数据块组成,范围是由段依次分配的,分配的第一个范围称为初始范围,以后分配的范围称为增量范围。
数据块: 是数据库进行IO操作的最小单位,它与操作系统的块不是一个概念。oracle数据库不是以操作系统的块为单位来请求数据,而是以多个Oracle数据库块为单位。
Oracle文件结构
数据库的物理存储结构是由一些多种物理文件组成,主要有数据文件、控制文件、重做日志文件、归档日志文件、参数文件、口令文件、警告文件等。
控制文件:存储实例、数据文件及日志文件等信息的二进制文件。
数据文件:存储数据,以.dbf做后缀。一句话:一个表空间对多个数据文件,一个数据文件只对一个表空间。
日志文件:即Redo Log Files和Archivelog Files。记录数据库修改信息。
参数文件:记录基本参数。spfile和pfile。
警告文件:show parameter background_dump_dest---使用共享服务器连接
跟踪文件:show parameter user_dump_dest---使用专用服务器连接
Oracle体系结构
Oracle内存结构
程序代码(PL/SQL、java)
程序运行时必需的相关信息
Oracle进程之间通信和共享信息
关于已连接的会话信息,包括当前所有活动回话和非活动回话
SGA中存储的是数据库的信息
Oracle.DATABASE.11g安装
本次试用CentOS6.5系统,安装Oracle之前要注意硬件需求,内存最小为4GB,虚拟内存为物理内存的两倍,磁盘40G左右
前期用命令,后期安装需要使用图形化安装,为了方便,全程使用init5的图形化界面,需要准备[Oracle字体库zysong]已支持中文
CentOS6.5.iso / rhel5.5.iso / ORACLE_DATABASE_11G.R2.X64.iso
准备阶段
1、设置 ip 地址:
[root@localhost ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth0
2、查看操作系统版本:
[root@localhost ~]# cat /etc/redhat-release
CentOS release 6.5 (Final)
3、查看内存信息
[root@localhost ~]# grep MemTotal /proc/meminfo
4、查看磁盘空间
[root@localhost ~]# df -hT /
5、修改主机名
[root@localhost ~]# vim /etc/sysconfig/network
修改:
HOSTNAME=ocracle.com
OR
hostname oracle.com
bash
6、查看交换分区
[root@localhost ~]# grep SwapTotal /proc/meminfo
7、设置域名解析
[root@localhost ~]# vim /etc/hosts
添加:
172.16.1.1 oracle.com
8、调整内核参数
fs.aio-max-nr = 1048576 fs.file-max = 6815744 kernel.shmall = 2097152 kernel.shmmax = 536870912 kernel.shmmni = 4096 kernel.sem = 250 32000 100 128 net.ipv4.ip_local_port_range = 9000 65500 net.core.rmem_default = 262144 net.core.rmem_max = 4194304 net.core.wmem_default = 262144 net.core.wmem_max = 1048586
9、使用yum安装软件包(光盘挂载到/mnt下,是centos6.5)
yum -y install binutils compat-libstdc++-33 elfutils-libelf elfutils-libelf-devel gcc gcc-c++ glibc glibc-common glibc-devel glibc-headers kernel-headers ksh libaio libaio-devel libgcc libgomp libstdc++ libstdc++-devel make numactl-devel sysstat unixODBC unixODBC-devel
yum安装可能会报错,是缓存的问题,下面是解决办法
yum clean all yum makecache rpm -ihv /mnt/Packages/ksh-20120801-10.el6.x86_64.rpm rpm -ihv /mnt/Packages/libaio-devel-0.3.107-10.el6.x86_64.rpm rpm -ihv /mnt/Packages/numactl-devel-2.0.7-8.el6.x86_64.rpm rpm -ihv /mnt/Packages/unixODBC-2.2.14-12.el6_3.x86_64.rpm rpm -ihv /mnt/Packages/unixODBC-devel-2.2.14-12.el6_3.x86_64.rpm #用rpm单个安装这些插件包
挂载rhel5.5光盘,需要把以前的光盘卸载,使用umount /dev/cdrom,需卸载多次
[root@oracle ~]# rpm -e ksh (先移除) [root@oracle ~]# rpm -ivh /mnt/Server/pdksh-5.2.14-36.el5.i386.rpm [root@oracle ~]# rpm -ivh /mnt/Server/ksh-20100202-1.el5.i386.rpm (再安装)
中文支持
(Oracle字体库zysong.zip ) [root@oracle ~]# mkdir -p /usr/share/fonts/zh_CN/TrueType [root@oracle ~]# unzip zysong.zip [root@oracle ~]# cp zysong.ttf /usr/share/fonts/zh_CN/TrueType
10、用户&组创建
[root@oracle ~]# groupadd -g 66 oinstall [root@oracle ~]# groupadd -g 77 oracle [root@oracle ~]# useradd -g oinstall -G oracle oracle [root@oracle ~]# passwd oracle [root@oracle ~]# mkdir /opt/oracle [root@oracle ~]# chown -R oracle:oinstall /opt/oracle [root@oracle ~]# chmod -R 775 /opt/oracle
11、更改环境变量
umask 022 export ORACLE_BASE=/opt/oracle export ORACLE_HOME=$ORACLE_BASE/product/11.2/db_1 export ORACLE_SID=orcl export LANG=zh_CN.UTF-8 export NLS_LANG="SIMPLIFIED CHINESE_CHINA.AL32UTF8" export PATH=$ORACLE_HOME/bin:$PATH export DISPLAY=:0.0
12、资源限制
vim /etc/pam.d/login 添加: session required /lib/security/pam_limits.so session required pam_limits.so vim /etc/security/limits.conf 添加: oracle soft nproc 8192 oracle hard nproc 16384 oracle soft nofile 32768 oracle hard nofile 65536 oracle soft stack 10240
[root@ocracle ~]# vim /etc/profile 添加: if [ $USER = "oracle" ]; then if [ $SHELL = "/bin/ksh" ]; then ulimit -p 16384 ulimit -n 65536 else ulimit -u 16384 -n 65536 fi fi
确认无误后重启
安装Oracle
先挂载镜像,查看权限,如果权限不是775就卸载重新挂载,反复多次
创建oracle数据库存放的位置/database,把光盘里面的所有文件复制进去
[root@oracle ~]# mkdir /database [root@oracle ~]# cp -rf /mnt/* /database/
这里需要执行这个命令,要不然可能会报错,xhost 是用来控制X server访问权限的
xhost +
###########
#xhost + 是使所有用户都能访问Xserver.
#xhost + ip使ip上的用户能够访问Xserver
这个时候切换用户使用oracle安装,安装的权限最好多给几次,要不然不通过会报错
出现以下说明硬件检测顺利通过
Oracle图形化安装操作
1、因为我们是实验步骤,之间下一步,真实环境需要填写DBA的电子邮件
2、这里选择创建和配置数据库,因为是第一次安装数据库
3、选择服务器类
4、选择单实例数据库
5、典型安装
6、相关配置路径,这里需要注意仔细核对,管理口令是密码,需要最少一个大写,一个小写,一个数字,最少8位
7、清单目录需要在后面指定到oracle下面,方便查找
8、检测通过,程序包都是存在的,可以查到,右上角忽略即可,然后点击完成
9、长时间的安装
在完成安装后,执行玩两个脚本后,再点击“确定”。 注意:要以 root 身份登录数据库。 [root@oracle ~]# /opt/oracle/oraInventory/orainstRoot.sh //更改/opt/oracle 权限 [root@oracle ~]# /opt/oracle/product/11.2/db_1/root.sh //调整/opt/cracle 的 root 权限
验证 :
1 、使用 浏览器 访问 https://oracle.com:1158/em/ 。
用户:sys
密码:Com12345
类型:SYSORACLE
2 、使用 命令登录数据库
[root@oracle ~]# su - oracle [oracle@oracle ~]$ sqlplus sys/Cheney123 AS sysdba SQL*Plus: Release 11.2.0.1.0 Production on 星期五 11月 17 15:03:28 2017 Copyright (c) 1982, 2009, Oracle. All rights reserved. 连接到: Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production With the Partitioning, OLAP, Data Mining and Real Application Testing options SQL>