一、建立群组与用户
linux中打开终端terminal,root用户登录,输入命令:
groupadd dba // 添加dba组 useradd -g dba -m oracle // 添加用户名为oracle,并将该用户加入dba群组 passwd oracle // 为oracle用户设置密码,我设置的密码为oracle二、创建必要的安装目录及设置变量
(1)、使用root用户创建如下路径:
# mkdir –p /home/oracle //oracle安装基本目录(ORACLE_BASE) # mkdir –p /home/oracle/product/11.2.0/db_1 //ORACLE_HOME目录 # mkdir –p /home/oracle/oradata //oracle实例安装目录 # mkdir –p /home/oracle/oraInventory //说明:-p参数的作用是级联建立目录,父目录不存在则依次建立。
(2)、修改目录所有者
# chown –R oracle:dba /home/oracle // 将/home/oracle目录及其下所有子目录改为oracle用户,dba组所拥有,-R表示级联操作,即包含其下所有子目录。
(3)、修改操作权限
#chmod –R 775 /home/oracle // 修改/home/oracle目录及其所有子目录的操作权限为775(rwx[u,user]rwx[g,group]r-x[o,other])
u 表示“用户(user)”,即文件或目录的所有者。 g 表示“同组(group)用户”,即和文件属主有相同组ID的所有用户。 o 表示“其他(others)用户”。 a 表示“所有(all)用户”。他是系统默认值。
(4)、添加环境变量
1)、root用户登录后,切换到oracle用户下:
su oracle2)、新建配置文件:
-bash-4.1$ vim /home/oracle/.bash_profile // 或者使用vi命令
3)、添加如下配置:
export ORACLE_BASE=/home/oracle export ORACLE_HOME=/home/oracle/product/11.2.0/db_1 export ORACLE_SID=orcl // 数据库的sid export ORACLE_OWENER=oracle export PATH=$PATH:$ORACLE_HOME/bin:$HOME/bin export PATH=$ORACLE_HOME/bin:$PATH CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib CLASSPATH=$CLASSPATH:$ORACLE_HOME/network/jlib export CLASSPATH注意:(1、ORACLE_SID为操作系统的环境变量,用于和数据库实例名对应,操作系统要得到实例名(instance_name,是数据库参数)必须通过操做系统环境变量oracle_sid,oracle_sid与instance_name必须相同,否则报错(在unix平台,是“ORACLE not available”,在winnt平台,是“TNS:协议适配器错误”)。
(2、数据库实例名(instance_name):用于和操作系统之间的联系,操作系统与数据库之间的交互则必须使用数据库实例名;数据库实例名称存储在参数文件中。
查询当前数据库实例名:
方法一:select instance_name from v$instance; 方法二:show parameter instance
(3、数据库名(db_name):是oracle内部管理数据的标记。
作用:数据库名是数据库的内部管理标记,在安装数据库、创建新的的数据库、创建数据库控制文件、修改数据库结构、使用数据库备份与恢复工具进行数据库备份时都需要使用数据名。
查询数据库名:
方式一:select name from v$database 方式二:SQL>show parameter db_name
(4、数据库域名(db_domain):在数据库名称后增加域名构成,使得数据库的取名在整个网络环境中惟一,主要用于oralce分布式环境中数据的远程复制
作用::1、在oracle分布式环境下,两个数据库之间要通过数据链路进行数据的远程传输。2、在同一网络环境下,两个数据库名相同。
查询域名:
方式一、select value from v$parameter where name=‘db_domain‘ 方式二、SQL>show parameter db_domain
(5、数据库服务名service_names:数据库名+数据库域名,意义与全局数据库名相同。
查询数据库服务名:
方式一、select value from v$parameter where name=‘service_names‘ 方式二、SQL>show parameter service_names(6、全局数据库名global_db_name:数据库名+数据库域名。
关于vi的简单命令说明:输入vim /home/oracle/.bash_profile 新建配置文件后,需要按下i(进入insert模式)键,才能添加、修改。
修改完毕后,按ESC后,按下shift+:,输入wq,即可保存并退出。
另外,若是直接将上面若干变量从windows系统的文件中拷贝复制到linux配置文件中,需使用vi命令打开,检查每行最后有无特殊字符,有则删掉,否则环境变量不会生效。
4)、使环境变量生效:
输入以下命令,或者重启服务器:
-bash-4.1$ source $HOME/.bash_profile
三、安装oracle 11g R2
1、解压缩oracle安装包(linux.x64_11gR2_database_1of2.zip、linux.x64_11gR2_database_2of2.zip):
unzip linux.x64_11gR2_database_1of2.zip unzip linux.x64_11gR2_database_2of2.zip
成功后,在当前目录会生成database目录,我的解压后目录为 cd /home/OracleInstaller/database
修改该目录的操作权限,以防出现问题:
#chmod –R -777 /home/OracleInstall
2、以oracle用户进入安装包目录,执行安装命令:
-bash-4.1$ su oracle -bash-4.1$ cd /home/OracleInstaller/database -bash-4.1$ ./runInstaller
即可进入oracle 11g数据库安装欢迎界面。
注意:(1)、若是使用非root用户(或者远程)安装,则需用root登录执行命令行中xhost +命令才能成功调出图形界面。
# xhost + // 按回车键如果出现如下信息,则表示设置成功
Access control disabled, clients can connect from any host // 表示禁用访问控制,用户从任何主机都能访问
(2)、安装过程中,若是中文安装包出现乱码,则需设置 :
-bash-4.1$ export LANG=zh_CN.gbk
若是英文安装包,出现乱码,则设置:
-bash-4.1$ export LANG=en_US -bash-4.1$ export LC_ALL=en_US
(3)、若是安装前校验提示:must be configured to display at least 256 colors Failed,则设置命令如下:
-bash-4.1$ export DISPLAY=:0.0 // 在本机上安装是这样,若是在其他终端上则需改为 export DISPLAY=ip:0.0,前面是因为本机的127.0.0.1省略了。
3、执行图形界面安装步骤:
步骤一:不勾选复选框,不填写电子邮件,直接下一步,无视弹出的警告框(未提供电子邮件警告)
弹出警告如下:
步骤二:选择安装类型(创建并配置一个数据库,还是仅仅安装数据库软件,还是更新一个一存在的数据库,这里选择第二项),如下:
步骤三:选择安装单机版数据库实例,还是安装集群数据库,这里选择单机,第一个
步骤四:选择安装语言,这里选择简单中文,在左边选择框里选择,然后添加到右边一栏里,并选中,点击下一步
步骤五:选择安装企业版、标准版、还是标准版1,这里选择企业版
步骤六:选择ORACLE的基本路径,以及数据库软件的安装位置,和一开始配置的环境变量要对应;即要先设置环境变量,否则会报错。
这里,弹出警告框,警告oracle的基路径安装在了home下, 点击yes,继续安装。
步骤七:为oracle的安装文件指定一个目录(首次安装时),名称为oraInventory,大约占150K空间:
步骤八:选择先前建立的dba组,并继续
步骤九:执行安装前的校验:
校验结果如下:选择Ignore All,忽略不满足的条件,并继续:
上步点击继续后,进入安装界面,大约需要20分钟。
安装完成后,系统会提示需要用root权限执行2个shell脚本。本例在/home/oracle/app/oracle/product/11.2.0/dbhome_1/root.sh和 /home/oracle/app/oraInventory/orainstRoot.sh
新开启一个终端,输入命令:
su root // 需输入密码 cd /home/oracle/app/oracle/product/11.2.0/db_1 sh root.sh cd /home/oracle/app/oraInventory sh orainstRoot.sh
四、监听安装
使用以下命令,进入图形化界面安装:
su oracle -bash-4.1$ cd /home/oracle/product/11.2.0/db_1/bin -bash-4.1$ ./netca
如下图:选择配置监听器
选择新增监听器:
输入监听器名称,默认即可:
选择协议,TCP默认即可。
填写监听端口,默认1521即可:
选择no,不再新增另一个监听器:
监听配置完成:
点击FINISH,完成安装监听器。
另外,某些情况下可能需要对本机装的oracle数据库配置本地网路服务名,见http://www.cnblogs.com/zhangyongli2011/archive/2012/04/04/2431953.html
五、数据库实例安装:
使用以下命令进入图形界面安装:
su oracle cd /home/oracle/product/11.2/db_1/bin $ ./dbca
初始界面:
点击下一步:
步骤一:创建一个数据库,选择第一项
步骤二:选择第一个即可,用于普通的事务处理
步骤三:输入数据库名称和数据库SID,这里数据库名称为orcl,sid为先前配置环境变量的sunlight(注意图上有点不符)
步骤四:如图配置即可,可根据自己需要进行设置自动每日备份等。
步骤五:设置数据用户的密码
提示密码简单,无视,继续:
步骤六:设置存储数据文件的位置,如图配置:
步骤七:是否指定闪回区域,及是否设置归档,本例均不设置
步骤八:如图:
步骤九:内存百分比保持在40%左右,选择自动内存管理,
在字符集一栏里选择ZHS16GBK
步骤十:下一步
控制文件的位置:
数据文件的位置:
步骤十一:选择创建数据库,另一个为保存为数据库模板,最下面为是否生成数据库创建脚本。
数据库创建细节:ok即可
最后,安装完成,提示备份一下/home/..../db_1/sunlight35_orcl_sysman_config/emket.ora这个文件,备份到/home/oracle即可。
也可选择密码管理,进行oracle其他用户的禁用或者解除禁用,及设置密码。
检验、创建dba用户、查看用户表空间:
使用sqlplus检验:若是命令行里不提示该命令,则需要source /home/oracle/.bash_profile
$ sqlplus sys/vehicle@orcl as sysdba;
创建ITS用户,赋予dba权限,两句命令
create user ITS identified by vehicle; grant dba to ITS;
查看新建用户ITS的表空间
$ sqlplus ITS/vehicle@orcl sql> select username, default_tablespace from user_users;
over!