Linux AS 70安装 Oracle12c 121020.docx
《Linux AS 70安装 Oracle12c 121020.docx》由会员分享,可在线阅读,更多相关《Linux AS 70安装 Oracle12c 121020.docx(27页珍藏版)》请在冰豆网上搜索。
LinuxAS70安装Oracle12c121020
LinuxAS7.0
安装
Oracle12c12.1.0.2.0
2015-02-15
一、安装检查准备
查看内存、SWAP空间、硬盘空间、CPU情况、AS6.0安装情况、防火墙状态。
Oracle公司宣称在Linux下安装Oracle12c数据库至少要有512MB的内存和至少1GB或者两倍内存大小的交换空间,对于系统内存大于2GB的服务器,交换空间可以介于2GB—4GB之间
RAM
SwapSpace
Between1GBand2GB
1.5timesthesizeofRAM
Between2GBand16GB
EqualtothesizeofRAM
Morethan16GB
16GB
grepMemTotal/proc/meminfo
grepSwapTotal/proc/meminfo
防火墙暂时关闭。
安装AS7.0尽量把DevelopmentTools里的开发包都安装上,避免缺失文件。
二、ORACLE配置
1、禁用secureLinux
因为SELINUX对oracle有影响,所以把securelinux设成无效
通过编辑vi/etc/selinux/config文件禁用securelinux,确认其中的SELINUX标记如下:
SELINUX=disabled。
2、设置核心参数
vi/etc/sysctl.conf
kernel.shmmax=53687091210737418242147483648
kernel.shmmni=4096
kernel.shmall=2097152
kernel.sem=25032000100128
fs.aio-max-nr=1048576
fs.file-max=6815744
net.ipv4.ip_local_port_range=900065500
net.core.rmem_default=262144
net.core.rmem_max=4194304
net.core.wmem_default=262144
net.core.wmem_max=1048576
sysctl-p命令使得内核改变立即生效
kernel.shmmax=53687091210737418242147483648分别代表1G、2G、4G
(根据系统物理内存大小,选择相应值)
[root@localhost~]#sysctl-p
kernel.shmmax=1073741824
kernel.shmmni=4096
kernel.shmall=2097152
kernel.sem=25032000100128
fs.aio-max-nr=1048576
fs.file-max=6815744
net.ipv4.ip_local_port_range=900065500
net.core.rmem_default=262144
net.core.rmem_max=4194304
net.core.wmem_default=262144
net.core.wmem_max=1048576
3、设置oracle用户的shelllimit
vi/etc/security/limits.conf
oraclesoftnproc2047
oraclehardnproc16384
oraclesoftnofile1024
oraclehardnofile65536
4、更改/etc/pam.d/login文件
添加下面的内容,使shelllimit生效:
vi/etc/pam.d/login
sessionrequiredpam_limits.so
5、新增组和用户
oinstall组中的成员用于管理Oracle数据库软件(即各种Oracle物理软件)。
dba组中的成员用于管理、操作数据库,在使用操作系统验证的情况下,dba组中的成员在数据库中拥有sysdba权限。
groupaddoinstall
groupadddba
useraddoracle-goinstall-Gdba
passwdoracle
-g选项表示其后为新建用户的初始组。
-G选项后为新建用户所属的其他组。
6、检查系统安装包
[root@localhost~]#rpm-qbinutilscompat-libcap1compat-libstdc++-33gccgcc-c++glibcglibc-devellibgcclibstdc++libstdc++-develmakelibaiolibaio-devellibXilibXtstsysstatunixODBCunixODBC-develksh
binutils-2.23.52.0.1-16.el7.x86_64
compat-libcap1-1.10-7.el7.x86_64
compat-libstdc++-33-3.2.3-69.el6.x86_64
gcc-4.8.2-16.el7.x86_64
gcc-c++-4.8.2-16.el7.x86_64
glibc-2.17-55.el7.x86_64
glibc-devel-2.17-55.el7.x86_64
libgcc-4.8.2-16.el7.x86_64
libstdc++-4.8.2-16.el7.x86_64
libstdc++-devel-4.8.2-16.el7.x86_64
make-3.82-21.el7.x86_64
libaio-0.3.109-12.el7.x86_64
libaio-devel-0.3.109-12.el7.x86_64
libXi-1.7.2-2.1.el7.x86_64
libXtst-1.2.2-2.1.el7.x86_64
sysstat-10.1.5-4.el7.x86_64
unixODBC-2.3.1-10.el7.x86_64
unixODBC-devel-2.3.1-10.el7.x86_64
ksh-20120801-19.el7.x86_64
注:
如有未安装的软件包,请重新安装未安装的软件包,保证以上的软件包都安装无误。
如安装包有依赖关系,可添加--force–nodeps,强制忽略依赖关系。
7、更改oracle用户环境变量
切换oracle用户,配置环境变量
vi/home/oracle/.bash_profile
exportORACLE_BASE=/opt/oracle
exportORACLE_HOME=/opt/oracle/product/12.1.0
exportORACLE_SID=mega
exportPATH=$PATH:
$ORACLE_HOME/bin:
$ORACLE_HOME/jdk/bin:
exportLD_LIBRARY_PATH=$ORACLE_HOME/lib:
/lib:
/usr/lib:
/usr/local/lib
exportNLS_LANG=american_america.ZHS16GBK
exportCLASSPATH=$ORACLE_HOME/jlib:
$ORACLE_HOME/network/jlib
exportTNS_ADMIN=$ORACLE_HOME/network/admin
ORACLE_BASE:
安装Oracle软件的初始目录。
ORACLE_HOME:
Oracle软件的可执行文件以及诸多配置文件所在的路径。
ORACLE_SID:
数据库实例名称。
PATH:
指定shell在搜索可执行文件时的路径集合。
LD_LIBRARY_PATH:
使用Oracle的某些工具或某些第三方软件时,需要读取这个环境变量的值,找到调用的函数库所在的路径。
NLS_LANG:
设置Oracle客户端工具,如SQL*Plus的语言环境。
CLASSPATH:
如果用到jdbc或sqlj等Java或J2EE工具,需要把变量设置Java类库所在的路径。
TNS_ADMIN:
用于设置Oracle的网络配置文件所在的目录。
注:
#屏蔽原oracle用户的PATH。
8、创建Oracle的安装目录
mkdir-p/opt/oracle/product/12.1.0
chown-Roracle:
oinstall/opt/oracle
chmod-R775/opt/oracle
9、准备Oracle12c安装文件
把Oracle12c安装文件linuxamd64_12102_database_1of2.zip、linuxamd64_12102_database_2of2.zip放置到/home目录下。
解压安装包unziplinuxamd64_12102_database_1of2.zip、linuxamd64_12102_database_2of2.zip之后,会在/home下创建数据库的安装文件夹database。
改变/home/database文件夹的属性权限。
chown-Roracle.oinstall/home/database
chmod777/home/database
三、Oracle安装过程图解
用Oracle用户登陆系统准备安装Oracle数据库:
cd/home/database
进入目录执行:
./runInstaller
ConfigureSecurityUpdates
电子邮件可以接收系统的重要信息以及异常等;MyOracleSupport口令应该是购买正版才可以会有这个口令并接收安全更新。
在不输入电子邮件和口令的情况下,会有警告提示。
SelectInstallationOption选择“创建和配置数据库”,下一步:
创建和配置数据库:
全新安装Oracle12.1.0并创建新数据库;
仅安装数据库软件:
仅安装数据库软件而不创建数据库;
升级现有数据库:
从旧有数据库升级到Oracle12.1.0;
SystemClass选择“服务器类”,下一步:
桌面类:
是在笔记本等低配置机器上安装数据库。
服务器类:
是在配置较高的服务器上安装数据库。
GridInstallationOptions选择“单实例数据库安装”,下一步:
单实例数据库安装:
是单机安装数据库。
RealApplicationClusters数据库安装:
是安装集群,Oracle12c把集群安装直接集成到Oracle安装里了,不需要单独安装集群软件。
OracleRACOneNodeDatabaseInstallation:
这个选项在选定节点上安装OracleRACOneNode数据库二进制文件。
SelectinstallType选择“高级安装”,下一步:
典型安装:
使用基本配置安装Oracle数据库;
高级安装:
可以在安装中进行更多的配置。
SelectProductLanguages添加“简体中文”,下一步:
SelectDatabaseEdition选择“企业版”,下一步:
SpecifyInstallationLocation默认“下一步”:
CreateInventory如默认下一步,会报一个错误。
在InventoryDirectory改成“/opt/oracle/oraInventory”
选择“Yes”创建“/opt/oracle/oraInventory”目录
SelectConfigurationType选择“通用”,下一步:
SpecifyDatabaseIdentifiers全局数据库名和SID依照实际设置。
此处,全局数据库名:
dbaSID:
mega
在OracleDatabase12c中,ContainerDatabase(容器数据库,CDB)与PluggabbleDatabase(可插拔式数据库,PDB)是12c中一个标志性的新特性。
可插拔式数据库-PluggableDatabase为云计算而生。
在12c以前,Oracle数据库是通过Schema来进行用户模式隔离的,现在,可组装式数据库可以让此前意义上的多个数据库一起共存。
PluggableDatabase其体系结构的核心是:
由一个容器数据库(CDB)和多个可组装式数据库(PDB)构成,PDB包含独立的系统表空间和SYSAUX表空间等,但是所有PDB共享CDB的控制文件、日志文件和UNDO表空间。
各个PDB之间互访需要通过DBLink进行,就仿佛是多个数据库一样。
并将其归结为:
多租户数据库。
也就是说,在云平台上,不同租户可以在一个大的CDB数据库中运行,而彼此数据(PDB)与应用又完全隔离。
显然这个特性对Oracle推出的数据库云平台必不可少。
下图是PluggableDatabase的体系结构示意图:
注:
此处不创建容器数据库。
SpecifyConfigurationOptions选择“自动内存管理”
选择“简体中文ZHS16GBK”字符集
SpecifyDatabaseStorageOptions文件系统选择好相应目录。
默认下一步:
SpecifyManagementOptions默认下一步:
SpecifyRecoveryOptions选择是否自动备份,下一步:
SpecifySchemaPasswords设置相应密码。
注意:
Oracle12c密码区分大小写。
PrivilegedOperatingSystemGroups默认下一步:
PerformPrerequisiteChecks检查Oracle配置,如有报错请检查,保证无错误。
Summary确定安装选项。
InstallProduct安装进度。
以root用户执行安装“orainstRoot.sh”和“root.sh”
[root@localhosthome]#cd/opt/oracle/oraInventory/
[root@localhostoraInventory]#./orainstRoot.sh
Changingpermissionsof/opt/oracle/oraInventory.
Addingread,writepermissionsforgroup.
Removingread,write,executepermissionsforworld.
Changinggroupnameof/opt/oracle/oraInventorytooinstall.
Theexecutionofthescriptiscomplete.
[root@localhostoraInventory]#cd/opt/oracle/product/12.1.0/
[root@localhost12.1.0]#./root.sh
Performingrootuseroperation.
Thefollowingenvironmentvariablesaresetas:
ORACLE_OWNER=oracle
ORACLE_HOME=/opt/oracle/product/12.1.0
Enterthefullpathnameofthelocalbindirectory:
[/usr/local/bin]:
Copyingdbhometo/usr/local/bin...
Copyingoraenvto/usr/local/bin...
Copyingcoraenvto/usr/local/bin...
Creating/etc/oratabfile...
Entrieswillbeaddedtothe/etc/oratabfileasneededby
DatabaseConfigurationAssistantwhenadatabaseiscreated
Finishedrunninggenericpartofrootscript.
Nowproduct-specificrootactionswillbeperformed.
[root@localhost12.1.0]#
安装配置数据库
安装完毕,退出安装程序。
1、修改密码大小写限制
注意:
Oracle12c对于用户名和服务名并没有区分大小写,但是对于密码已经开始区分大小写了。
altersystemsetsec_case_sensitive_logon=true|false
在12c中有个初始参数可以供用户控制口令用不用区分大小写,该参数为:
altersystemsetsec_case_sensitive_logon=true; 区分大小写 (default)
altersystemsetsec_case_sensitive_logon=false; 不区分大小写
SQL>showparametersec_case_sensitive_logon;
NAME TYPE VALUE
-----------------------------------------------------------------------------
sec_case_sensitive_logon boolean TRUE
--修改密码
alteruseruser_nameidentifiedbypassword;
2、监听ORA-12514错误
SQL>connectsys/System@dbaassysdba
ERROR:
ORA-12514:
TNS:
listenerdoesnotcurrentlyknowofservicerequestedinconnectdescriptor
出现以上提示,切换到oracle用户下,可修改
vi/opt/oracle/product/12.1.0/network/admin/listener.ora文件
修改如下:
SID_LIST_LISTENER=
(SID_LIST=
(SID_DESC=
(GLOBAL_DBNAME=dba)
(ORACLE_HOME=/opt/oracle/product/12.1.0)
(SID_NAME=mega)
)
)
LISTENER=
(DESCRIPTION_LIST=
(DESCRIPTION=
(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1521))
(ADDRESS=(PROTOCOL=TCP)(HOST=localhost.localdomain)(PORT=1521))
)
)