4.4.2 オンプレミスOracle Database用のLinux向けOML4Pyサーバーのインストール
オンプレミスOracle Database 19cまたは21c用にLinux向けOML4Pyサーバーをインストールする手順です。
オンプレミスOracleデータベース用にLinux向けOML4Pyサーバーをインストールするには、サーバー・インストールPerlスクリプトを実行します。
前提条件
- インターネットへの接続。
- Python 3.12.0。Python 3.12.0のインストール手順は、「オンプレミス・データベース用のPython for Linuxの構築およびインストール」を参照してください。
- OML4Pyサポート・パッケージ。必要なサポート・パッケージのインストール手順は、「オンプレミス・データベース用のLinuxに必要なサポート・パッケージのインストール」を参照してください。
- システムにインストールされているPerl 5.8以降。
ノート:
Perlには、perl-Env
パッケージが存在する必要があります。 - perl-Envパッケージがシステムに存在するかどうかを確認するには、次のコマンドを入力します。
rpm -qa perl-Env
インストールされている場合、戻り値にはシステムにインストールされているperl-Env RPMのバージョンが含まれます。
rpm -qa perl-Env perl-Env-1.04-2.el7.noarch
perl-Envがシステムにインストールされていない場合、戻り値はないので、rootまたはsudoとして次のコマンドを使用してパッケージをインストールできます。
yum install perl-Env
- サーバー・コンポーネントをダウンロードしてインストールするディレクトリに対する書込み権限。
サーバー・インストール・ファイルのダウンロードおよび抽出
オンプレミスOML4Pyサーバーのインストール・ファイルをダウンロードし、その内容を抽出します。
oml4py
ディレクトリが$ORACLE_HOME
ディレクトリに存在しない場合は作成します。mkdir $ORACLE_HOME/oml4py
- システムのインストール・ファイルをダウンロードします。
- Oracle Technology Networkの「Oracle Machine Learning for Python Downloads」ページにアクセスします。
- ライセンス契約に同意し、Oracle Machine Learning for Python Downloads (v2.0)を選択します。
- Oracle Machine Learning for Python Server Install for Oracle Database on Linux 64 bitを選択します。
- ファイルを
$ORACLE_HOME/oml4py
ディレクトリに保存します。
- インストール・ファイルを
$ORACLE_HOME/oml4py
ディレクトリに抽出するには、次のコマンドを使用します。unzip oml4py-server-linux-x86_64-2.0.zip -d $ORACLE_HOME/oml4py
ファイルは、
$ORACLE_HOME/oml4py/server
サブディレクトリに抽出されます。
サーバー・インストールPerlスクリプトのオプションの引数の表示
サーバー・インストール・スクリプトのオプションの引数を表示するには、ディレクトリを$ORACLE_HOME/oml4py
ディレクトリに変更します。
次のコマンドを使用して、使用可能なインストール・オプションを表示します。
perl -Iserver server/server.pl --help
次が表示されます。
Oracle Machine Learning for Python 2.0 Server. Copyright (c) 2018, 2022 Oracle and/or its affiliates. All rights reserved. Usage: server.pl [OPTION]... Install, upgrade, or uninstall OML4P Server. -i, --install install or upgrade (default) -u, --uninstall uninstall -y never prompt --ask interactive mode (default) --pdb NAME PDB name --perm PERM permanent tablespace to use for PYQSYS --temp TEMP temporary tablespace to use for PYQSYS --no-db do not configure the database; only install the oml module and libraries associated with Embedded Python Execution --no-embed do not install the Embedded Python Execution component --no-automl do not install the AutoML metamodels
デフォルトでは、インストール・スクリプトによって、Embedded Python ExecutionコンポーネントとAutoMLコンポーネントの両方がインストールされます。これらのコンポーネントをインストールしない場合は、--no-embed
フラグまたは--no-automl
フラグ(あるいはその両方)を使用します。
Perlコマンドで永続表領域または一時表領域を指定しないと、インストール・スクリプトからその入力を求められます。
データベース構成なしでoml
モジュールおよびEmbedded Python Executionライブラリのインストールのみを行う場合は、--no-db
フラグを使用します。--no-db
フラグは、Oracle RACなどの複数のノードを持つデータベースにOML4Pyをインストールする場合に使用します。OML4Pyサーバーには最初のノードで完全なデータベース構成が必要ですが、oml
モジュールおよびEmbedded Python Executionライブラリは各ノードにインストールする必要があります。
サーバー・インストールPerlスクリプトの実行
インストールPerlスクリプトにより、PYQSYSスキーマおよびユーザーが作成されます。OML4Pyデータベース・オブジェクト、表およびその他のサーバー要素を格納するために、指定した永続表領域および一時表領域が使用されます。PYQSYSユーザーは、PYQSYSスキーマに格納されているシステム・オブジェクトを保護するためにロックされます。
デフォルトでは、インストールPerlスクリプトは対話モードで実行され、Embedded Python Executionコンポーネントがインストールされます。
- インストールされた
oml
モジュールがPythonで検出できるように、サーバー・インストール・スクリプトを実行する前にPYTHONPATH
環境変数を設定する必要があります。export PYTHONPATH=$ORACLE_HOME/oml4py/modules
$ORACLE_HOME/oml4py
ディレクトリから、サーバー・インストール・スクリプトを実行します。次のコマンドは、スクリプトを対話モードで実行します。perl -Iserver server/server.pl
スクリプトから入力を求められたら、PYQSYSユーザーの一時表領域および永続表領域を入力します。
- インストール・スクリプトに
Proceed?
と表示されたら、y
またはyes
と入力します。正常なインストールの出力は次のとおりです。perl -Iserver server/server.pl
Oracle Machine Learning for Python 2.0 Server. Copyright (c) 2018, 2022 Oracle and/or its affiliates. All rights reserved. Checking platform .................. Pass Checking ORACLE_HOME ............... Pass Checking ORACLE_SID ................ Pass Checking sqlplus ................... Pass Checking ORACLE instance ........... Pass Checking CDB/PDB ................... Fail ERROR: cannot install OML4P in a root container PDB to use for OML4P installation [list]: ORCLPDB PDB to use for OML4P installation [list]: ORCLPDB Checking CDB/PDB ................... Pass Checking OML4P Server .............. Pass Checking Python .................... Pass Checking module dependencies ....... Pass Checking Python libraries .......... Pass Checking OML4P version ............. Pass Choosing PYQSYS tablespaces PERMANENT tablespace to use for PYQSYS [list]: SYSTEM USERS PERMANENT tablespace to use for PYQSYS [list]: SYSTEM TEMPORARY tablespace to use for PYQSYS [list]: TEMP Current configuration ORACLE_HOME ...................... /u01/app/oracle/product/19.3/dbhome_1 ORACLE_SID ....................... orcl PDB .............................. ORCLPDB Python Version ................... 3.12.0 PYTHONHOME ....................... /u01/app/oracle/product/19.3/dbhome_1/python Existing OML4P data and code ..... None Existing OML4P AutoML component .. None Existing OML4P embed component ... None Existing OML4P module version .... None PYQSYS PERMANENT tablespace ...... SYSTEM PYQSYS TEMPORARY tablespace ...... TEMP Operation ........................ Install/Upgrade Proceed? [yes]yes Copying embedded python libraries ... Pass Processing ./server/oml-2.0-cp312-cp312-linux_x86_64.whl Installing collected packages: oml Successfully installed oml-2.0 Configuring the database ............ Pass Done
OML4Pyユーザーは、機械学習アクティビティを実行する権限を持つデータベース・ユーザー・アカウントです。Oracle Machine Learning for Python用のユーザーを作成する方法の詳細は、「オンプレミスOracle Database用の新しいユーザーの作成」をクリックします
サーバーのインストールの確認
- OML4Pyサーバー・データベース・インスタンスで、PDBにログインするOMLユーザー(この例ではPDB1)としてSQL*Plusを起動します。
sqlplus oml_user/oml_user_password$PDB1
- 次のコマンドを実行します。
SELECT * FROM sys.pyq_config;
想定される出力は次のとおりです。sqlplus / as sysdba;
SQL*Plus: Release 19.0.0.0.0 - Production on Mon Jan 31 12:49:34 2022 Version 19.3.0.0.0 Copyright (c) 1982, 2019, Oracle. All rights reserved. Connected to: Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production Version 19.3.0.0.0
alter session set container=PDB1;
Session altered.
select * from sys.pyq_config;
NAME -------------------------------------------------------------------------------- VALUE -------------------------------------------------------------------------------- PYTHONHOME /u01/app/oracle/product/19.3/dbhome_1/python PYTHONPATH /u01/app/oracle/product/19.3/dbhome_1/oml4py/modules VERSION 2.0 NAME -------------------------------------------------------------------------------- VALUE -------------------------------------------------------------------------------- PLATFORM ODB DSWLIST oml.*;pandas.*;numpy.*;matplotlib.*;sklearn.*
- オンプレミス・データベース用のOML4Pyサーバーのインストールを確認するには、「オンプレミス・データベース用のOML4Pyインストールの確認」を参照してください。
Database Configuration Assistant (DBCA)を使用したOML4Pyのインストール
OML4Pyは、DBCAを使用してインストールできます。DBCAの使用に関する詳細な手順は、サイレント・モード時のDatabase Configuration Assistantコマンド・リファレンスを参照してください。
OML4Pyをインストールする基本構文は、次のとおりです。
dbca -configureOML4PY
-oml4pyConfigTablespace
: OML4Py用にPYQSYS
スキーマの表領域を構成します。デフォルトの表領域はSYSAUX
です。-enableOml4pyEmbeddedExecution
: Oracle Machine Learning for Pythonの埋込みPythonコンポーネントを有効にします。デフォルト値はTRUE
です。
- オンプレミスOracleデータベース用にOML4Pyサーバーをインストールするためのコマンドの概要
次の例では、オンプレミスoracleデータベース用にOML4Pyサーバーをインストールするためのコマンドを示します。