1. ホーム
  2. データベース
  3. 神託

Oracle21cをRPMパッケージでインストールする方法

2022-01-08 14:10:29

前置き

  • 北京時間2021.8.14 Oracleは、データベースの最新バージョンOracle21cをリリース、OracleはOracle20cとOracle22cをリリースしない予定、直接Oracle21cとOracle23cのリリースに、どのOracle21cない拡張子のサポート、サポート時間は2024までではないはず、それは多くの顧客がそれを使用することが期待されています。
  • しかし、oracle21cには、ネイティブ・ブロックチェーンやjson、javascriptのサポートなど、多くの改良が加えられています。
  • 以下は、クラウドとenmoによるロードマップの説明です。クラウドとenmoの知見に感謝します。
  • オラクルはサポートが長いバージョン以外をイノベーション・バージョンと呼んでいることに注意してください

1. 環境整備

このインストールは、深い穴、多くの非互換性のCentOS8.0のインストールに遭遇し、強制インストールも、いくつかのJavaの方法の欠如によって促され、失敗したので、Oracle Enterprise Linux 8.4のインストールに切り替える方法はありません非常に滑らかで、1時間半に対応する仕事を完了します。

<ブロッククオート
OELの最新版をオラクルのホームページからダウンロードします。
新しいパッケージの取得に任せて、総合的な環境インストールを行うことで、時間を大幅に短縮することができますので、おすすめです。
バックアップとしてOSをインストールします。

Oracleのサイトからrpmパッケージをダウンロードします。el7のものではなく、el8のものを選択する必要があることに注意してください。

https://download.oracle.com/otn/linux/oracle21c/oracle-database-ee-21c-1.0-1.ol8.x86_64.rpm?AuthParam=1629176797_ ffffc61959e496fcaf6ca82b0509e16e
https://yum.oracle.com/repo/OracleLinux/OL8/appstream/x86_64/getPackage/oracle-database-preinstall-21c-1.0-1.el8.x86_64.rpm

なお、1つはOracleネイティブパッケージ、もう1つはOracleプリインストールパッケージで、インストールは非常に簡単です。

2. rpmのインストール。

まずプリインストールをインストールします

yun localinstall oracle-database-preinstall-21c-1.0-1.el8.x86_64.rpm

その後、eeデータベースのインストールを行います。

yum localinstall oracle-database-ee-21c-1.0-1.ol8.x86_64.rpm

注意

マシンがインターネットにアクセスし、依存パッケージをダウンロードできる必要があります
ファイルの読み込みに失敗しないよう、十分なストレージ容量が必要です。

3. データベースの初期化

Oracleの21cは前バージョンと全く同じで、特別な変更はなく、基本的に同じ設定ファイルをセットアップする必要があります

3.1 Modify the initialization script, note that you need to change it to your own service name and character set, etc.
vim /etc/init.d/oracledb_ORCLCDB-21c 
Change the contents to the following:
export ORACLE_HOME=/opt/oracle/product/21c/dbhome_1
export ORACLE_SID=ORA21C
export TEMPLATE_NAME=General_Purpose.dbc
export CHARSET=ZHS16GBK
export PDB_NAME=ORA21CPDB
export LISTENER_NAME=LISTENER
export NUMBER_OF_PDBS=1
export CREATE_AS_CDB=true
3.2 Since the custom service name has been changed, you need to copy a configuration file.
scp /etc/sysconfig/oracledb_ORCLCDB-21c.conf /etc/sysconfig/oracledb_ORA21C-21c.conf 
3.3 Execute the script for database initialization
/etc/init.d/oracledb_ORCLCDB-21c configure
# Note that this step may take a bit longer and you need to wait for successful execution
# This is where the CentOS8 error occurs, causing subsequent failures. 
3.4 Modify the environment variables to make it possible to log in to the database and set NLS_LANG so that sqlplus can display Chinese information properly.
vim /etc/profile.d/oracle21c.sh
export ORACLE_HOME=/opt/oracle/product/21c/dbhome_1
export PATH=$PATH:/opt/oracle/product/21c/dbhome_1/bin
export ORACLE_SID=ORA21C
export NLS_LANG='SIMPLIFIED CHINESE_CHINA.AL32UTF8'
Save and switch the user and it will take effect.
3.5 Login to the database and change the oracle system administrator password
passwd oracle
su - oracle
sqlplus / as sysdba
alter user system identified by yournewpassword ;
3.6 Note that you need to add a procedure that will automatically open the pdb at boot time
CREATE TRIGGER open_all_pdbs
   AFTER STARTUP ON DATABASE
BEGIN
   EXECUTE IMMEDIATE 'alter pluggable database all open';
END open_all_pdbs;
/

4. set boot autostart set boot autostartは、多くの時間を節約することができます。

4.1 Modify the configuration file
vim /etc/oratab
# Note that the N is changed to Y
ORA21C:/opt/oracle/product/21c/dbhome_1:Y
4.2 Set the startup script
vim /usr/bin/oracle.sh
# Add the following content
#! /bin/bash
# script For oracle19c.service
/opt/oracle/product/21c/dbhome_1/bin/lsnrctl start
/opt/oracle/product/21c/dbhome_1/bin/dbstart /opt/oracle/product/19c/dbhome_1
4.3 Setting Executable Permissions
chmod 777 /usr/bin/oracle.sh
4.4 Set up a service, and set it to start automatically on boot
vim /etc/systemd/system/oracle21c.service
# Add the following

[Unit]
Description=Oracle21c
After=syslog.target network.target

[Service]
LimitMEMLOCK=infinity
LimitNOFILE=65535
Type=oneshot
RemainAfterExit=yes
User=oracle
Environment="ORACLE_HOME=/opt/oracle/product/21c/dbhome_1"
ExecStart=/usr/bin/oracle.sh

[Install]
WantedBy=multi-user.target

# Set up bootup
systemctl enable oracle21c
4.5 Reboot the machine for verification. The service is ready to use. 

5. Backspaceキーが効かないようにsqlplusを修正する。これは簡単なステップです。

Download a package for rlwrap on my end
rlwrap-0.43-5.el8.x86_64.rpm
Put it on the machine and run
yum localinstall rlwrap-0.43-5.el8.x86_64.rpm

Modify the previous environment variables and add an alias
alias sqlplus='rlwrap sqlplus'
# Note that there should be no spaces before or after the equal sign.

6. バージョンアップの結果画面が次のようになることを確認します。

Oracle21cをRPMパッケージでインストールする方法についての説明は以上となります。RPMパッケージによるOracle21cのインストールについては、スクリプトハウスの過去の記事を検索するか、以下の関連記事を引き続き参照してください。