2

php5.6システムを からにアップグレードする必要がありますphp7.2。システムはoracle 10.1データベースを使用します。

phpすべての情報を収集しようとしましたが、 、oci8instant clientおよびデータベース間の互換性についてまだ混乱しています。

私は、php7では少なくともインストールする必要があることを読みましoci8 2.1たが、これはoracle 10.1.

あれは正しいですか?

それともphp7oracleで実行でき10.1ますか?

教えてください:)

4

1 に答える 1

1

私は、php7では少なくともoci8 2.1をインストールする必要があることを読みましたが、これはoracle 10.1では機能しません。

あれは正しいですか?

いいえ。マニュアルから:

OCI8 2.0 には、Oracle 12c、11g、または 10g クライアント ライブラリが必要で、PHP 5.2 以降にインストールされます。

使用する Oracle クライアントのバージョンは、サーバーのバージョンと一致する必要はありません。同じマニュアルページから(読みやすくするために箇条書きに再フォーマットされています):

  • OCI8 が 9iR2 クライアント ライブラリを使用する場合、PHP は Oracle Database 8i、9iR2、10g、または 11g に接続できます。
  • OCI8 が 10gR2 クライアント ライブラリを使用する場合、データベースは 9iR2、10g、11g、または 12c です。
  • OCI8 が 11g クライアント ライブラリを使用する場合、データベースは 9iR2、10g、11g、または 12c です。
  • OCI8 が 12c クライアント ライブラリを使用する場合、データベースは 10gR2、11g、または 12c です。

そのため、最後のシナリオ (12c クライアント ライブラリ) のみが 10.1 より新しいデータベース バージョンを必要とします。

マニュアルの内容に関係なく、テスト インスタンスを作成して問題がないか確認することを強くお勧めします。


編集: OCI8 パッケージの PECL ページ からの詳細情報:

Oracle の標準のクロスバージョン接続が適用されます。たとえば、Instant Client 11.2 にリンクされた PHP OCI8 は、Oracle Database 9.2 以降に接続できます。詳細については、Oracle のノート「Oracle Client / Server Interoperability Support」(ID 207303.1) を参照してください。

于 2018-06-11T10:49:58.083 に答える