失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > CentOS 7 腾讯云服务器 Linux无图形化界面静默安装oracle数据库.

CentOS 7 腾讯云服务器 Linux无图形化界面静默安装oracle数据库.

时间:2019-10-08 13:23:08

相关推荐

CentOS 7 腾讯云服务器 Linux无图形化界面静默安装oracle数据库.

服务器基础信息

腾讯云 CentOS7.2 64位

root登录系统查看一下版本信息

CentOS Linux release 7.2.1511 (Core)

在安全组中将ORACLE默认通讯端口 TCP 1521放通

1.安装前准备

首先,请先以root账号登入作一些前置设定作业。

输入密码后进入root账户

本文中所描述的系统命令,未经特殊标示,均为“#”代表root权限,“$”代表oracle权限。

准备ORACLE 安装文件:

Linux.x64_11gR2_database_1of2.zip

Linux.x64_11gR2_database_2of2.zip

我建议安装文件可以通过SFTP传输或者在官网下载方法很多。

①SFTP文件传输…

这个速度比较慢并且还不能中断续传…

②可以使用wget命令下载

wget是一个linux从网络上自动下载文件的自由工具。它支持HTTP,HTTPS和FTP协议,可以使用HTTP代理.

所谓的自动下载是指,wget可以在用户退出系统的之后在后台执行。这意味这你可以登录系统,启动一个wget下载任务,然后退出系统,wget将在后台执行直到任务完成,相对于其它大部分浏览器在下载大量数据时需要用户一直的参与,这省去了极大的麻烦。

.具体使用方法参照:/jokerjason/p/7364779.html

③CentOS安装图形界面VNC远程桌面使用web浏览器进行下载

图形界面安装下载具体方法 另一篇博客来介绍。

1.1操作系统准备

查看主机名

# hostname

查看ip地址

# ifconfig

修改hosts文件,然后添加现在主机的IP地址+主机名,wq保存。

# vi /etc/hosts

#vi /etc/sysconfig/network

加入内容 HOSTNAME=主机名

1.2关闭、防火墙

关闭selinux

#vi /etc/selinux/config

设置SELINUX=disabled

防火墙临时关闭命令:

#setenforce 0#service iptables stop

2.安装依赖包

(依赖包有离线版)

yum -y install gccyum -y install gcc-c++yum -y install makeyum -y install binutilsyum -y install compat-libstdc++-33yum -y install elfutils-libelfyum -y install elfutils-libelf-develyum -y install elfutils-libelf-devel-staticyum -y install glibcyum -y install glibc-commonyum -y install glibc-develyum -y install kshyum -y install libaioyum -y install libaio-develyum -y install libgccyum -y install libstdc++yum -y install libstdc++-develyum -y install numactl-develyum -y install sysstatyum -y install unixODBCyum -y install unixODBC-develyum -y install pdkshyum -y install kernel-headersyum -y install pcre-develyum -y install readline*yum -y install rlwrap

3.创建安装用户、组、目录

#groupadd oinstall#groupadd dba#useradd -g oinstall -G dba oracle#passwd oracle#id oracle

输入后可以看到群组的情况:

3.1创建软件安装目录

#mkdir -p /opt/oracle//$ORACLE_BASE

#mkdir -p /opt/oracle/product/11/db_1//$ORACLE_HOME

#mkdir /opt/oracle/oradata//存放数据库目录

#mkdir /opt/oracle/inventory

#mkdir /opt/oracle/flash_recovery_area

#chown -R oracle:oinstall /opt/oracle

#chmod -R 775 /opt/oracle//设置权限

3.2 将oracle使用者加入到sudo群组中

#vi /etc/sudoers

输入上面的命令后,打开sudoers文件进行编辑,找到

root ALL=(ALL) ALL

这行,并且在底下再加入以下内容:(按esc退出insert插入模式,按下i进入编辑模式)

oracle ALL=(ALL) ALL

保存退出:wq!

3.3 配置系统环境

3.3.1修改内核参数

# vi /etc/sysctl.conf

修改、添加以下内容(不能小于下面的数值,灰色已存在的不能比这个小)如果没有的话就加入进去

kernel.shmall = 2097152

kernel.shmmax = 1073741824

fs.aio-max-nr = 1048576

fs.file-max = 6815744

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 = 1048576

修改完毕后,启用配置

# sysctl -p

3.3.2修改用户限制文件

# vi /etc/security/limits.conf

行末添加以下内容:

oracle soft nproc 2047

oracle hard nproc 16384

oracle soft nofile 1024

oracle hard nofile 65536

oracle soft stack 10240

3.3.3关联设置

#vi /etc/pam.d/login

行末添加以下内容:

session required /lib64/security/pam_limits.so

session required pam_limits.so

3.3.4修改/etc/profile

#vi /etc/profile

添加以下内容:

if [ $USER = "oracle" ]; thenif [ $SHELL = "/bin/ksh" ]; thenulimit -p 16384ulimit -n 65536elseulimit -u 16384 -n 65536fifi

在root用户下,使用命令source profile使环境变量生效

# source /etc/profile

3.3.5 修改用户环境变量

# vi /home/oracle/.bash_profile

在最底下加入以下内容:

# For Oracleexport ORACLE_BASE=/opt/oracle;export ORACLE_HOME=/opt/oracle/product/11/db_1 export ORACLE_SID=orcl;export PATH=$PATH:$HOME/bin:$ORACLE_HOME/binexport LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/libif [ $USER = "oracle" ]; thenif [ $SHELL = "/bin/ksh" ]; thenulimit -p 16384ulimit -n 65536elseulimit -u 16384 -n 65536fiumask 022fi

使环境变量生效 如果报错检查上述内容是否输入正确。

# source /home/oracle/.bash_profile

4.正式安装 oracle数据库

4.1解压oracle安装文件

Oracle 11g安装包:将安装包上传至服务器/opt/oracle/ 下面,这两个包属于oracle用户

linux.x64_11gR2_database_1of2.zip

linux.x64_11gR2_database_2of2.zip

安装包解压命令(使用oracle用户解压 )

$ unzip linux.x64_11gR2_database_1of2.zip$ unzip linux.x64_11gR2_database_2of2.zip

解压完成后/opt/oracle下会生成database目录

4.2编辑oracle数据库安装应答文件

1、/opt/oracle/database/response(解压后的文件中)下有有db_install.rsp、dbca.rsp和netca.rsp三个应答文件.

db_install 是数据库安装文件。

dbca.rsp 是建立数据库实例和。

netca.rsp 是监听配置安装文件。

下面修改数据库安装文件。

在oracle用户编辑时如果提示只读不能保存时,需要root权限修改一下文件所有者,可以通过chown命令进行修改。

同时修改用户和组, chown 所有者,所属组 文件\目录名。

chown oracle /opt/oracle/database/response/dbca.rspchown oracle /opt/oracle/database/response/netca.rspchown oracle /opt/oracle/database/response/db_install.rsp

编辑db_install.rsp配置文件

$ vi /opt/oracle/database/response/db_install.rsp

修改以下内容

oracle.install.option=INSTALL_DB_SWONLY//29行 安装类

ORACLE_HOSTNAME=VM_0_9_centos //37 行 主机名称

UNIX_GROUP_NAME=oinstall //42 行 安装组

INVENTORY_LOCATION=/opt/oracle/inventory //47 行 INVENTORY目录

SELECTED_LANGUAGES=en,zh_CN //78 行 选择语言

ORACLE_HOME=/opt/oracle/product/11/db_1 //83 行 oracle_home

ORACLE_BASE=/opt/oracle //88 行 oracle_base

oracle.install.db.InstallEdition=EE //99 行 oracle版本

oracle.install.db.DBA_GROUP=dba //142行dba用户组

oracle.install.db.OPER_GROUP=oinstall //147行oper用户组

oracle.install.db.config.starterdb.type=GENERAL_PURPOSE //160行 数据库类型

oracle.install.db.config.starterdb.globalDBName=orcl//165行globalDBName

oracle.install.db.config.starterdb.SID=orcl //170行SID

oracle.install.db.config.starterdb.memoryLimit=800 //200行 自动管理内存的最小内存(M)

oracle.install.db.config.starterdb.password.ALL=oracle //233行 设定所有数据库用户使用同一个密码

DECLINE_SECURITY_UPDATES=true //385行 设置安全更新

4.3安装

使用oracle用户安装(注意命令su - oracle和 su oracle意义是不一样的不能缺少中间的 “-”)

# su - oracle

进入刚才解压的database目录

$ cd /opt/oracle/database/

$ ./runInstaller -silent -responseFile /opt/oracle/database/response/db_install.rsp -ignorePrereq

下面出现运行出现 swap为0,最小为150MB不满足安装需求。

运行free查看一下

$ free -m

total = 0 说明没有启用swap,腾讯云服务器默认没有开启swap。

既然系统内存1G 那交换空间就2G,swap设置为 系统内存的两倍就可以。

创建 2G空间swap文件

# dd if=/dev/zero of=/var/swap bs=1024 count=2048000

if 表示infile,of表示outfile,bs=1024代表增加的模块大小,count=2048000代表2048000个模块,也就是2G空间

将目的文件设置为swap分区文件

# mkswap /var/swap

挂载swap

# swapon /var/swap

再次free -m查看ok

配置永久生效开机自动挂载

# vim /etc/fstab

加入如下内容并保存

/var/swap swap swap defaults 0 0

回过头继续执行安装命令

$ ./runInstaller -silent -responseFile /opt/oracle/database/response/db_install.rsp -ignorePrereq

下面就是等待阶段大约可能需要 10分钟。

安装过程中,如果提示[WARNING]不必理会,此时安装程序仍在后台进行,如果出现[FATAL],则安装程序已经停止了。

可以在以下位置找到本次安装会话的日志:

/optoracle/oraInventory/logs/installActions-06-08_04-00-25PM.log

可以使用命令查看日志:后面的地址应该以你的安装过程中的提示为准

#tail -100f /optoracle/oraInventory/logs/installActions-06-08_04-00-25PM.log

中文参照:

参照说明再打开一个终端窗口ROOT权限登入进行操作运行上述两个脚本。

# /opt/oracle/inventory/orainstRoot.sh# /opt/oracle/product/11/db_1/root.sh

Oracle11g的安装就到此结束!

5.配置监听

5.1 netca(oracle net configuration assistance)配置

检查oracle安装目录下的netca.rsp应答文件配置信息

目录地址/opt/oracle/database/response/netca.rsp

# vi /opt/oracle/database/response/netca.rsp

主要查看以下参数配置:

INSTALL_TYPE="“custom”" //安装的类型

LISTENER_NUMBER=1 //监听器数量

LISTENER_NAMES={“LISTENER”} //监听器的名称列表

LISTENER_PROTOCOLS={“TCP;1521”} //监听器使用的通讯协议列表

LISTENER_START="“LISTENER”" //监听器启动的名称

检查完毕后,执行命令:

$ netca /silent /responseFile /opt/oracle/database/response/netca.rsp

创建监听没有成功 如出现上述错误

解决:一般是 host名称与本机不对应导致检查1.1操作步骤是否正确

再次运行

$ netca /silent /responseFile /opt/oracle/database/response/netca.rsp

执行成功如下图:

成功运行后,在/opt/oracle/product/11/network/admin/中生成listener.ora和sqlnet.ora

执行netca的时候已经生成了listener监听了,所以我们修改下面文件:

$ vi $ORACLE_HOME/network/admin/listener.ora

将HOST 改成当前主机使用的网卡IP地址

这里把localhost 改成172.0.0.1或者本机ip保存退出就好了

5.2下面我们开启监听:

$ lsnrctl start

然后通过netstat命令可以查看1521端口正在监听如下图(再新建立一个连接使用root权限查看)

# netstat -tnulp | grep 1521

6.添加数据库实例

6.1修改dbca.rsp建立数据库实例(就是解压安装文件目录下的)

$ vim /opt/oracle/database/response/dbca.rsp

再本次安装中设置了下列的参数:可以根据自己情况进行设置(配置文件有说明)

RESPONSEFILE_VERSION =“11.2.0” //不能更改

OPERATION_TYPE =“createDatabase”

GDBNAME =“orcl” //数据库的名字

SID =“ORCL” //对应的实例名字

TEMPLATENAME =“General_Purpose.dbc” //建库用的模板文件

SYSPASSWORD =“asd123” //SYS管理员密码

SYSTEMPASSWORD =“asd123” //SYSTEM管理员密码

SYSMANPASSWORD= “asd123”

DBSNMPPASSWORD= “asd123”

DATAFILEDESTINATION =/opt/oracle/oradata //数据文件存放目录

RECOVERYAREADESTINATION=/opt/oracle/flash_recovery_area //恢复数据存放目录

CHARACTERSET =“ZHS16GBK” //字符集,重要!!!建库后一般不能更改,所以建库前要确定清楚。

TOTALMEMORY =“1638” //1638MB,物理内存2G*80%。

配置好后就可以进行下面的建立实例了。

6.2 建立

$ dbca -silent -responseFile /opt/oracle/database/response/dbca.rsp

正确执行后会进行建库,需要等待一会 下图为建库完成的提示

这里界面可能会出现闪动,可以等全部东西都不见了,是要输入SYS密码,一闪而过。

然后输入完毕按下回车,又看见SYSTEM密码一闪而过,再次输入密码回车,这时就开始建库了。

完成(上述输入密码的步骤有可能直接略过)

建库后进行实例进程检查:

$ ps -ef | grep ora_ | grep -v grep

查看监听状态:

$ lsnrctl status

6.3设置开机自启动

修改dbstart和dbshut脚本:

修改文件/opt/oracle/product/11/db_1/bin/dbstart

$ vi /opt/oracle/product/11/db_1/bin/dbstart将ORACLE_HOME_LISTNER=$1 修改为ORACLE_HOME_LISTNER=$ORACLE_HOME

修改/opt/oracle/product/11/db_1/bin/dbshut

$ vi /opt/oracle/product/11/db_1/bin/dbshut将ORACLE_HOME_LISTNER=$1 修改为ORACLE_HOME_LISTNER=$ORACLE_HOME

再编辑oratab文件

$vi /etc/oratab

将orcl:/data/oracle/product/11:N中最后的N改为Y,成为

orcl:/data/oracle/product/11:Y 如图

编辑rc.local

使其在Linux启动时候自动开启oracle服务,root下编辑rc.local

# vim /etc/rc.d/rc.local

在最下面加入下内容

su - oracle -lc dbstart

su - oracle -lc lsnrctl start

测试:

输入命令dbshut和dbstart测试

Oracle监听停止,进程消失。

$ dbshut$ lsnrctl status$ ps -ef |grep ora_ |grep -v grep

Oracle 监听启动,进程启动。

$ dbstart $ lsnrctl status$ ps -ef |grep ora_ |grep -v grep

6.4登录查看实例状态:

$ sqlplus / as sysdba

错误:

解决:

使用下列命令来查看 SID是否正确

$ echo $ORACLE_HOME$ echo $ORACLE_SID //用此命令修改现在的SID看自己设的什么$ env |grep ORACLE //或者使用此命令$ export ORACLE_SID=orcl //用此命令来修改当前的SID

继续执行下列SQL语句

SQL> select status from v$instance;

错误:

出现上述错误 实例不可用 一般情况是 几个SID设置的不匹配导致实例没有正常运行。

尝试启动实例

SQL> startup

错误:

解决:

该问题一般是认为sid设置混乱造成,oracle安装过程中有几个地方都设置sid和数据库名称之类的,很容易记错。

出现以下提示,按照网上来说是 在oracle9i、10g、11g最近几个版本中,数据库默认使用spfile启动数据库。

上述路径 spfile配置文件外损坏造成的需要找到备份,进行还原 spfile配置文件,但是我们的数据实例刚刚建立还没有使用一般不会损坏配置文件的。

我们浏览到上述路径查看一下目录下的文件 发现spfile文件后面的SID是 大写的ORCL

而我们的却是 小写 orcl 如下图

果断将当前实例SID修改 成大写:

$ export ORACLE_SID=ORCL

然后 登录继续

$ sqlplus / as sysdbaSQL> startup

看到实例已经成功启动了

继续

SQL> select status from v$instance;

看到执行成功的查询结果。到这里我们实例已经建立成功了。

SID错误解决总结下面几个步骤

-----------------------关闭实例和oracle服务-----------------------

SQL> shutdownSQL> quit$ dbshut

-----------------------查询当前设置的SID--------------------------

$ echo $ORACLE_SID

或者

$ env |grep ORACLE

-----------------------修改当前实例SID------------------------------

$export ORACLE_SID=ORCL

-----------------------启动oracle服务和实例-----------------------

$ dbstart

重新:$ sqlplus / as sysdba

SQL> startup

收尾

6.5完成之后,我们需要将selinux打开(不开也可以)

#vi /etc/selinux/config

将之前的disabled 改成enforcing 然后就可以了。

6.6检查listener.ora

/opt/oracle/product/11/db_1/network/admin/listener.ora

如果在安装监听过程中出现什么问题,可以将这个文件删除,然后重新执行netca步骤

里面的内容应该是这样的

SID_LIST_LISTENER =(SID_LIST =(SID_DESC =(GLOBAL_DBNAME = orcl)(ORACLE_HOME = /opt/oracle/product/11/db_1)(SID_NAME = ORCL)))LISTENER =(DESCRIPTION_LIST =(DESCRIPTION =(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))(ADDRESS = (PROTOCOL = TCP)(HOST = 172.17.0.9)(PORT = 1521))))ADR_BASE_LISTENER = /opt/oracle

7.Oracle卸载

1.停止监听服务(oracle用户登录)

[oracle@tsp-rls-dbserver ~]$ lsnrctl stop

2.停止数据库

[oracle@tsp-rls-dbserver ~]$ sqlplus / as sysdba

SQL>shutdown

3.删除oracle安装路径(root用户登录)

[root@tsp-rls-dbserver deps]# rm -rf /opt/oracle/product

[root@tsp-rls-dbserver deps]# rm -rf /opt/oracle/inventory

……安装前创建的和安装后生成的都删掉(oracle解压文件database不要误删)

4.删除系统路径文件(root用户登录)

[root@tsp-rls-dbserver deps]# rm -rf /usr/local/bin/dbhome

[root@tsp-rls-dbserver deps]# rm -rf /usr/local/bin/oraenv

[root@tsp-rls-dbserver deps]# rm -rf /usr/local/bin/coraenv

5.删除数据库实例表(root用户登录)

[root@tsp-rls-dbserver deps]# rm -rf /etc/oratab

6.删除数据库实例lock文件(root用户登录)

[root@tsp-rls-dbserver deps]# rm -rf /etc/oraInst.loc

7.删除oracle用户及用户组(root用户登录)重装oracle的话就不用删了

[root@tsp-rls-dbserver deps]# userdel -r oracle

[root@tsp-rls-dbserver deps]# groupdel oinstall

[root@tsp-rls-dbserver deps]# groupdel dba

其他操作

开启oracle服务:

$dbstart$lsnrctl start$sqlplus / as sysdbaSQL>startup

关闭oracle服务:

$dbshut$lsnrctl stop$sqlplus / as sysdbaSQL>shutdown

远程访问数据库

例子:windows端访问

执行telnet命令 确认 可以连接上。如果连接不上确认本机网络,及云服务器是否允许开放了对应端口的访问权。

确认Windows安装Oracle 数据库访问 客户端 instantclient,并配置好TNS连接字符串文件 tnsnames.ora 中的 HOST PORT SERVICE_NAME设置正确

由于数据库IP地址是公网所以打了码

如图:

打开相关 数据库访问操作软件

如 PL/SQL Developer

输入用户名sys和密码

连接成功随便查询一个表ok没有问题。

可以使用sql语句进行添加表空间角色正常使用即可。

至此对腾讯云CentOS系统Oracle数据库的安装配置圆满结束。

by MH8888 /07

如果觉得《CentOS 7 腾讯云服务器 Linux无图形化界面静默安装oracle数据库.》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。