Pythonアプリケーションの構築
Autonomous AI DatabaseにアクセスするPythonアプリケーションを構築するには、まず開発システムを構成して、Autonomous AI Databaseの継続的可用性および高パフォーマンス機能を利用できるデータベース・アクセスをサポートするようにしてください。
開発システムを構成した後、これらの機能を利用するように、アプリケーション内のデータベース接続およびSQL文をコーディングします。
ヒント :
次のトピックを読んでまずに試してみる場合は、開発者およびデータ・ユーザー専用Oracle Autonomous AI Databaseワークショップのラボ4: Pythonアプリケーション・スタックの構築を実行できます。関連項目
Python開発システムの構成
Pythonアプリケーションが自律型AIデータベースの継続的な可用性および高パフォーマンスの機能を利用できるように開発システムを構成するには、これらのステップを実行します。
- Pythonをダウンロードしてインストールします。
- Oracle Instant Clientをダウンロードしてインストールします。
- cx_Oracleをダウンロードしてインストールします。
- データベースのクライアント資格証明をダウンロードして、Oracle Instant Clientで使用できるようにします。
開始する前に
開発システムを正常に構成するためには、それが特定の基準を満たしている必要があります。
- 
                           
                           インターネット・アクセスが必要です。 
- 
                           
                           Autonomous AI Databaseへのネットワーク・アクセスが必要です。 開発システムがこの要件を満たしていることを確認する方法については、データベースにアクセスするための開発システムの構成を参照してください。 
Pythonのダウンロードとインストール
- 
                           Oracle Linux: Oracle Linux 7にはPython 2.7が含まれているため、このコマンドを実行するだけです: sudo yum -y install oracle-release-el7 
- 
                           その他のOSesおよびアーキテクチャ: python.orgの「ダウンロード」ページに移動し、使用しているOSおよびアーキテクチャ用の最新のPython 2.7またはPython 3.5 (以上の)バージョンをダウンロードしてインストールします。 
Oracle Instant Clientのダウンロードとインストール
Oracle Instant Clientライブラリのバージョン19.6以降が必要です。
使用しているシステムのOSおよびアーキテクチャ用のOracle Instant Client Basicパッケージをダウンロードしてインストールします:
- 
                              
                              Oracle Linux: 次のコマンドを実行して、Oracle Instant Client Basicパッケージをダウンロードしてインストールします: sudo yum -y install oracle-release-el7 sudo yum -y install oracle-instantclient19.3-basic (すべてのインスタント・クライアント・パッケージのリストを確認するには、 http://yum.oracle.com/repo/OracleLinux/OL7/oracle/instantclient/x86_64/index.htmlに移動します。)
- 
                              
                              その他のOSesおよびアーキテクチャ: - 
                                    
                                    「Oracle Instant Clientのダウンロード」ページに移動し、使用しているシステムのOSおよびアーキテクチャ用のダウンロードを選択します。 
- 
                                    
                                    ダウンロード・ページで、Oracle Technology Networkライセンス契約に同意し、最新バージョンのBasicパッケージをダウンロードしてから、ダウンロード・ページの下部にある指示に従ってインストールします。 
 
- 
                                    
                                    
cx_Oracleのダウンロードとインストール
Pythonのpipパッケージを使用して、PyPI (Python Package Index)からcx_Oracleをインストールします:
                     
- 
                           Oracle Linux: 次のコマンドを実行して pipパッケージをダウンロードし、それを使用してcx_Oracleをインストールします:sudo yum -y install oracle-release-el7 curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py sudo python get-pip.py python -m pip install cx_Oracle --upgrade 
- 
                           その他のOSesおよびアーキテクチャ: 次のコマンドを実行します: python -m pip install cx_Oracle --upgrade 
データベースのクライアント資格証明のダウンロードとインストール
- 
                              
                              データベースのクライアント資格証明を含むzipファイルをコンピュータ上の安全なディレクトリにダウンロードします。 このzipファイルは、Oracle Cloudコンソールのデータベースの「詳細」ページからダウンロードできます。このページへのアクセスを許可するOracle Cloudユーザー・アカウントを持っている場合は、次のように資格証明をダウンロードします。そのようなアカウントがない場合は、データベースの管理者からzipファイル、およびzipファイルの保護に使用されたパスワードを取得する必要があります。 - 
                                    
                                    WebブラウザでOracle Cloudにサインインし、Autonomous AI Databaseの「詳細」ページに移動します。 
- 
                                    
                                    「DB接続」をクリックします。 
- 
                                    
                                    「Database Connection」ページで、「Download」をクリックします。 
- 
                                    
                                    「Download Wallet」ダイアログで、「Password」フィールドにウォレット・パスワードを入力し、「Confirm Password」フィールドでパスワードを確認します。 パスワードは8文字以上の長さで、少なくとも1つの文字と、1つの数字または1つの特殊文字を含める必要があります。 
- 
                                    
                                    「ダウンロード」をクリックして、クライアント資格証明zipファイルを安全なディレクトリに保存します。 
 
- 
                                    
                                    
- 
                              
                              zipファイルをダウンロードした後は、次のステップに従います: - 
                                    
                                    クライアント資格証明zipファイルを解凍します。 
- 
                                    
                                    クライアント資格証明内に提供されている sqlnet.oraファイルを編集し、"?/network/admin"を、クライアント資格証明の解凍先ディレクトリのフルパスに置き換えます。例: 変更前:(DIRECTORY="?/network/admin")変更後: (DIRECTORY="/users/jdoe/adbcredentials")
- 
                                    
                                    TNS_ADMIN環境変数を作成し、その値をクライアント資格証明の解凍先ディレクトリのフルパスに設定します。
 
- 
                                    
                                    
データベース接続およびSQL文のコーディング
Autonomous AI DatabaseへのPythonアプリケーション接続をサポートするよう開発システムを構成したら、次のガイドラインに従って、データベースへのアプリケーション接続の高パフォーマンスおよび継続的可用性を実現します:
- 接続プールを使用します。
- FAN (高速アプリケーション通知)を有効にします。
- 実行する操作に最も適した事前定義済データベース・サービスを使用します。事前定義済のデータベース・サービスの詳細は、Autonomous AI Databaseの事前定義済のデータベース・サービス名を参照してください。
たとえば次のようにします。
pool = cx_Oracle.SessionPool("appuser",
                             SampleEnv.GetMainPassword(),
                             "tp_tls",
                             events=True,
                             threaded=True)この例では、tp_tlsデータベース・サービスへの接続用のプールを作成し、eventsパラメータをTrueに設定してFANを有効にします。
                  
その他のリソース
cx_Oracleの詳細は、cx_Oracleのドキュメント・ページを参照してください。
様々なcx_Oracle機能を示すコード例は、python-cx_Oracle samplesフォルダを参照してください。