Oracle学习1--阿里云ECS上部署单实例数据库11.2.0.4

简介: 初次学习部署Oracle的总结,有不正确的地方请指正~

阿里云ECS安装Oracle11.2.0.4单实例数据库软件
一、 环境准备
阿里云ECS: 2C 8G 系统类型:centos7.4

Oracle包:  11.2.0.4

二、 云盘挂载
这里使用了文件系统:
先把云磁盘挂载到 ECS上使用,在 ECS上执行 fdisk -l 检查确认挂载磁盘
使用 fdisk 对没有使用的磁盘进行分区,fdisk /dev/vdb ,(图为磁盘为整个分区)
image
按照提示:
选择 n,创建一个新的分区,选择作为主分区,分区号 1,开始位置 1,结束位置为最大值,即用整个磁盘作为分区。然后 w 保存退出。
格式化成 ext4 分区,执行 mkfs -t ext4 /dev/vdb1
修改/etc/fstab,在文件最后加上新加两个分区的定义,保存退出。
image
挂载磁盘,执行mount /dev/vdb1 /oradata
三、 系统准备
1、检查内存,内存不小于 4GB
2、SWAP 分区设置
ECS 没有配置 SWAP,不符合 Oracle 官方的系统要求,可申请新的云盘划分 SWAP。(这里避免没必要的坑,没有配置swap分区)
3、系统架构
确认系统是 64 位还是 32 位,例子里是 64 位。
4、/tmp 文件系统
检查临时文件系统空间,ECS 默认临时文件系统共享根盘的空间,大小足够,没问题。
5、OS版本
image
6、OS内核版本
image
7、系统RPM包
系统 rpm 包:
以下列出的是 Oracle 需要的系统包,其中红色是 ECS 默认没有安装的,需要单独安装。
binutils-2.17.50.0.6
compat-libstdc++-33-3.2.3
compat-libstdc++-33-3.2.3 (32 bit)
elfutils-libelf-0.125
elfutils-libelf-devel-0.125
gcc-4.1.2
gcc-c++-4.1.2
glibc-2.5-24
glibc-2.5-24 (32 bit)
glibc-common-2.5
glibc-devel-2.5
glibc-devel-2.5 (32 bit)
glibc-headers-2.5
ksh-20060214
libaio-0.3.106
libaio-0.3.106 (32 bit)
libaio-devel-0.3.106
libaio-devel-0.3.106 (32 bit)
libgcc-4.1.2
libgcc-4.1.2 (32 bit)
libstdc++-4.1.2
libstdc++-4.1.2 (32 bit)
libstdc++-devel 4.1.2
make-3.81
numactl-devel-0.9.8.x86_64
sysstat-7.0.2

使用如下安装命令进行安装,

yum install -y 'compat-libstdc++-33'

yum install -y 'compat-libstdc++-33.i686'

yum install -y elfutils-libelf-devel

yum install -y glibc-devel.i686

yum install -y ksh

yum install -y libaio.i686

yum install -y libaio-devel

yum install -y libaio-devel.i686

注意:安装图形界面时提示,有三个包是ECS不具备的,ignore就可以

8、/etc/sysctl.conf
/etc/sysctl.conf,以下参数是推荐最小值,如果现有值大于推荐值,可以不修改。将以下内容添加到该文件的末尾。
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
kernel.shmall = 2097152
kernel.shmmax = 6442450944
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
然后执行:/sbin/sysctl -p 生效,/sbin/sysctl -a 确认是否生效

9、/etc/pam.d/login
修改/etc/pam.d/login,增加一行:
session required pam_limits.so
10、修改selinux
vim /etc/sysocnfig/selinux ,确认一下参数生效
SELINUX=disabled

四、 Oracle软件安装配置
1、创建用户和组,执行下列命令:
groupadd oinstall
groupadd dba
useradd -g oinstall -G dba -d /home/oracle -m oracle
passwd oracle image

2、用户 Shell limits

编辑/etc/security/limits.conf,加入如下内容:
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536

3、用户环境变量配置
    在 oracle 用户的环境变量中增加如下内容:

if [ $USER = "oracle" ]; then

    if [ $SHELL = "/bin/ksh" ]; then
            ulimit -p 16384
            ulimit -n 65536
    else
            ulimit -u 16384 -n 65535
    fi

fi
ORACLE_BASE=/opt/oracle
ORACLE_SID=orcl
ORACLE_HOME=$ORACLE_BASE/product/11.2.0
PATH=$ORACLE_HOME/bin:$ORACLE_HOME/oracm/bin:$ORACLE_HOME/OPatch:$PATH
LD_LIBRARY_PATH=${LD_LIBRARY_PATH:+$LD_LIBRARY_PATH:}$ORACLE_HOME/lib:$ORACLE_HOME/lib32
CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib:$ORACLE_HOME/network/jlib
export ORACLE_BASE ORACLE_HOME ORA_NLS33 ORACLE_SID PATH LD_LIBRARY_PATH CLASSPATH TNS_ADMIN

4、创建目录
    执行以下命令:

mkdir -p /opt/oracle/product/11.2.0
mkdir -p /opt/oracle/oraInventory
mkdir -p /opt/oracle/product/11.2.0/oradata
mkdir -p /oradata/arch
chown -R oracle:oinstall /opt/oracle
chown -R oracle:oinstall /oradata/arch
chmod -R 755 /opt/oracle
chmod -R 777 /oradata

5、配置vnc server连接图形界面
    参考阿里云文档:
https://help.aliyun.com/knowledge_detail/41181.html?spm=5176.11065259.1996646101.searchclickresult.59466dcddVmdJI
6、解压对应的Oracle压缩包![image](https://yqfile.alicdn.com/155e6ff29b02f8511507dc6cdf73a7d6971a3cde.png)

 7、通过图形界面的命令行模式,执行命令
    su – oracle
export DISPLAY=localhost:1

[root@localhost ~]# xhost +

    access control disabled, clients can connect from any host 
8、切换到解压后的目录,执行:
    ./runInstaller
接下来就是Oracle软件安装图形化界面了

五、 Oracle软件图形化界面安装
图有些没有保存,借用的网上的图片进行说明
image
image
image
image
image
image
image
image
image
image
image
在检查的时候会warning有三个包没有安装,这是ECS的问题,可以ignore
image
image
image
安装时遇到的报错
解决方法:
查阅资料这是Oracle自带的bug,点击continue,继续安装。后续可以下载对应的安装包
image
以root身份执行orainstRoot.sh和root.sh脚本(注:执行完脚本以后,在点击“ok”)
image
点击close,至此数据库软件就部署完成
六、 创建数据库
在图形化界面Oracle用户,输入dbca
image
image
image
自定义一个数据库
image
image
image
image
为了方便选择使用统一的密码,可以根据自己的需求
image
选择数据库文件的存储路径/oradata
image
没有选择闪回和归档
image
根据需求选择需要安装的数据库组件
image
配置内存SGA和PGA:
SGA:大小一般为内存的50%-80%
PGA:大小一般为内存的20%左右
image
image
image
image
image
image
image
安装成功后,点击EXIT!完成
七、 创建数据库监听
通过Oracle用户界面执行netca
image
image
image
image
image
image
image
至此,在ECS上搭建一个简单的Oracle单实例数据库初步完成,刚接触Oracle,部署比MySQL复杂的多。
八、 遇到的问题
1、 切换到Oracle用户时,环境变量配置错误,然后切回到root用户再切到Oracle用户发现命令已经都不能使用了。
解决方法:通过root用户编辑用户,/home/oracle的环境变量,修改正确之后就可以正常使用了。
2、 无法连接到Oracle安装界面
image
解决方法:没有设置xhosts,登录到Oracle用户执行命令
[root@localhost ~]# export DISPLAY=localhost:1

[root@localhost ~]# xhost +

    access control disabled, clients can connect from any host 

3、 在图形界面安装的时候,弹出来的界面显示不完整,只显示一个标题框
解决方法:
在启动安装界面的时候使用:安装前,先配置jdk,如果有jdk,然后执行安装命令时指定本地的jdk就可以了
运行安装程序时使用 ./runInstaller -jreLoc /usr/lib/jvm/jre-1.8.0
4、image
解决方法:Inventory Directory指定的不正确,在linux上 找一下oraInventory文件的正确位置指定一下就可以了
5、image
安装时遇到的报错
解决方法:
查阅资料这是Oracle自带的bug,点击continue,继续安装。后续可以下载对应的安装包
6、选择Oracle database files存放的目录时,选择数据库盘时,提示对数据盘的访问没有权限,
解决方法:修改磁盘的访问权限为777 chmod 777 /oradata
7、搭建完之后数据库显示有乱码
原因:在用户的环境变量中设置的字符集是NLS_LANG= "SIMPLIFIED CHINESE_CHINA.ZHS16GBK"; export NLS_LANG
修改为American_America.zhs16gbk的默认的就可以了

相关实践学习
2分钟自动化部署人生模拟器
本场景将带你借助云效流水线Flow实现人生模拟器小游戏的自动化部署
7天玩转云服务器
云服务器ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,可降低 IT 成本,提升运维效率。本课程手把手带你了解ECS、掌握基本操作、动手实操快照管理、镜像管理等。了解产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
15天前
|
存储 Oracle 关系型数据库
数据库数据恢复—ORACLE常见故障的数据恢复方案
Oracle数据库常见故障表现: 1、ORACLE数据库无法启动或无法正常工作。 2、ORACLE ASM存储破坏。 3、ORACLE数据文件丢失。 4、ORACLE数据文件部分损坏。 5、ORACLE DUMP文件损坏。
58 11
|
15天前
|
SQL 弹性计算 安全
在云上轻松部署达梦数据库
达梦数据库(DM Database)是达梦数据库有限公司开发的关系型数据库管理系统,广泛应用于政府、金融、能源等行业。它具备高性能、高安全、兼容性强、易管理等特点,支持多种操作系统,适用于关键业务系统、政务系统及大数据处理等场景。在阿里云上,可通过一键部署快速使用达梦数据库DM8。
|
1月前
|
弹性计算 开发工具 git
2分钟在阿里云ECS控制台部署个人应用(图文示例)
作为一名程序员,我在部署托管于Github/Gitee的代码到阿里云ECS服务器时,经常遇到繁琐的手动配置问题。近期,阿里云ECS控制台推出了一键构建部署功能,简化了这一过程,支持Gitee和GitHub仓库,自动处理git、docker等安装配置,无需手动登录服务器执行命令,大大提升了部署效率。本文将详细介绍该功能的使用方法和适用场景。
2分钟在阿里云ECS控制台部署个人应用(图文示例)
|
27天前
|
Oracle 关系型数据库 数据库
Oracle数据恢复—Oracle数据库文件有坏快损坏的数据恢复案例
一台Oracle数据库打开报错,报错信息: “system01.dbf需要更多的恢复来保持一致性,数据库无法打开”。管理员联系我们数据恢复中心寻求帮助,并提供了Oracle_Home目录的所有文件。用户方要求恢复zxfg用户下的数据。 由于数据库没有备份,无法通过备份去恢复数据库。
|
1月前
|
NoSQL 容灾 MongoDB
MongoDB主备副本集方案:两台服务器使用非对称部署的方式实现高可用与容灾备份
在资源受限的情况下,为了实现MongoDB的高可用性,本文探讨了两种在两台服务器上部署MongoDB的方案。方案一是通过主备身份轮换,即一台服务器作为主节点,另一台同时部署备节点和仲裁节点;方案二是利用`priority`设置实现自动主备切换。两者相比,方案二自动化程度更高,适合追求快速故障恢复的场景,而方案一则提供了更多的手动控制选项。文章最后对比了这两种方案与标准三节点副本集的优缺点,指出三节点方案在高可用性和数据一致性方面表现更佳。
|
1月前
|
存储 Oracle 关系型数据库
oracle数据恢复—Oracle数据库文件大小变为0kb的数据恢复案例
存储掉盘超过上限,lun无法识别。管理员重组存储的位图信息并导出lun,发现linux操作系统上部署的oracle数据库中有上百个数据文件的大小变为0kb。数据库的大小缩水了80%以上。 取出&并分析oracle数据库的控制文件。重组存储位图信息,重新导出控制文件中记录的数据文件,发现这些文件的大小依然为0kb。
|
20天前
|
存储 Oracle 关系型数据库
服务器数据恢复—华为S5300存储Oracle数据库恢复案例
服务器存储数据恢复环境: 华为S5300存储中有12块FC硬盘,其中11块硬盘作为数据盘组建了一组RAID5阵列,剩下的1块硬盘作为热备盘使用。基于RAID的LUN分配给linux操作系统使用,存放的数据主要是Oracle数据库。 服务器存储故障: RAID5阵列中1块硬盘出现故障离线,热备盘自动激活开始同步数据,在同步数据的过程中又一块硬盘离线,RAID5阵列瘫痪,上层LUN无法使用。
|
2月前
|
存储 Oracle 关系型数据库
Oracle数据库的应用场景有哪些?
【10月更文挑战第15天】Oracle数据库的应用场景有哪些?
194 64
|
1月前
|
SQL Oracle 关系型数据库
Oracle数据库优化方法
【10月更文挑战第25天】Oracle数据库优化方法
53 7
|
1月前
|
Oracle 关系型数据库 数据库
oracle数据库技巧
【10月更文挑战第25天】oracle数据库技巧
31 6

推荐镜像

更多