简单来说就是:
1.安装preinstall : oracle-database-preinstall-19c-1.0-1.el7.x86_64.rpm
2.安装 ee : oracle-database-ee-19c-1.0-1.x86_64.rpm
3. 配置数据库(这个耗时最久,也是实际安装实例):
19c的RPM包下载链接,
https://www.oracle.com/database/technologies/oracle19c-linux-downloads.html
oracle-database-preinstall-19c下载地址
https://yum.oracle.com/repo/OracleLinux/OL7/latest/x86_64/index.html
搜索preinstall-19c,找到
先上传到服务器上
安装preinstall,当然一切都是先联网,然后再上架到机房。如果不联网的话,挂载ISO,然后从ISO的package里面安装依赖包,compat-libstdc++-33可以忽略的。
yum -y install oracle-database-preinstall-19c-1.0-1.el7.x86_64.rpm
依赖包安装好之后,就可以执行安装数据库(配置还在后面)
yum localinstall -y oracle-database-ee-19c-1.0-1.x86_64.rpm
下一步就是修改配置,先查看一下配置文件
more /etc/init.d/oracledb_ORCLCDB-19c
需要配置路径的部分:
# Setting the required environment variables
export ORACLE_HOME=/opt/oracle/product/19c/dbhome_1
export ORACLE_VERSION=19c
export ORACLE_SID=ORCLCDB
export TEMPLATE_NAME=General_Purpose.dbc
export CHARSET=AL32UTF8
export PDB_NAME=ORCLPDB1
export LISTENER_NAME=LISTENER
export NUMBER_OF_PDBS=1
export CREATE_AS_CDB=true
这段代码是Shell脚本中设置Oracle数据库相关环境变量的部分,变量的含义如下:
ORACLE_HOME:Oracle 19c的安装目录。
ORACLE_VERSION:当前Oracle数据库的版本号。
ORACLE_SID:Oracle数据库的系统标识符。
TEMPLATE_NAME:数据库创建时使用的模板名称。
CHARSET:指定数据库的字符集。
PDB_NAME:Oracle 19c容器数据库中创建的个人数据库名称。
LISTENER_NAME:创建监听器的名称。
NUMBER_OF_PDBS:Oracle 19c容器数据库中要部署的个人数据库的数量。
CREATE_AS_CDB:表示是否将当前数据库创建为容器数据库。
这些变量在Oracle 19c的安装和配置过程中非常重要,它们将用于配置环境和创建数据库。这些变量的值应该根据特定的环境和需求进行设置。
一般修改
ORACLE_SID
CHARSET
PDB_NAME
修改ORACLE_SID后,一般执行配置数据库会报错,按错误提示修改以下conf的文件名即可
执行图上的命令
/etc/init.d/oracledb_ORCLCDB-19c configure
数据库配置成功,但是这个时候oracle用户的环境变量并没有配置,需要自己手动配置
su – oracle
vi .bash_profile
ORACLE_SID=UATCDB;
export ORACLE_SID
ORACLE_BASE=/opt/oracle;
export ORACLE_BASE
ORACLE_HOME=$ORACLE_BASE/product/19c/dbhome_1;
export ORACLE_HOME
export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
PATH=$PATH:$ORACLE_HOME/bin:$HOME/bin;
export PATH
上面的NLS_LANG设置是因为我装的CENTOS 的字符集为简体中文,如何不设置该变量,SQLPLUS 中会有乱码。
注意:
默认安装的数据库是非归档模式下
也可以修改PDB的名字等
服务器托管,北京服务器托管,服务器租用 http://www.fwqtg.net
机房租用,北京机房租用,IDC机房托管, http://www.fwqtg.net
40亿个QQ号,限制1G内存,如何去重? 40亿个unsigned int,如果直接用内存存储的话,需要: 4*4000000000 /1024/1024/1024 = 14.9G ,考虑到其中有一些重复的话,那1G的空间也基本上是不够用的。 想要实现这个功能…