Puncte:0

driver oracle db pentru conexiune php - ubuntu 20.04

drapel bd

Așa că am pus această întrebare acum câteva zile, dar subiectul a fost închis pentru că rulam pe ubuntu 16.04. Acum am actualizat la Ubuntu 20.04.3 LTS.

Am o pagină php pe apache și conexiunea mea oracble db:

$conn=odbc_connect("nume gazdă","utilizator","parolă");

imi da aceasta eroare:

AH01071: Am primit eroare „Mesaj PHP: Avertisment PHP: odbc_connect(): Eroare SQL: [unixODBC][Driver Manager]Numele sursei de date nu a fost găsit și nu a fost specificat niciun driver implicit, starea SQL IM002 în SQLConnect

Înțeleg că trebuie să instalez un driver pentru ca acesta să funcționeze, dar nu sunt sigur care?
Fiind o bază de date Oracle într-o locație diferită, este obligatoriu să ai java (jdk) instalat pe mașina mea?

drapel in
[linkul pe care l-am postat](https://askubuntu.com/questions/1358771/oracle-db-driver-for-php-connection-ubuntu-16-php7-4#comment2327376_1358771) a fost insuficient?
Puncte:0
drapel cn

Limbajul tău de programare este, evident, PHP, deci nu are nimic de-a face cu Java, JDK, JDBC sau orice altceva.

Voi rezuma două surse, pentru că, din punctul meu de vedere, sunt suficient de bune încât să nu fie necesar să reproducem totul aici.

Pentru PHP, cea mai simplă cale este să utilizați Oracle Instant Client și PHP Database Object (PDO).

Rezumat din Ubuntu Wiki:

Instalați următoarele pachete, care sunt disponibile ca și pachete RPM pe site-ul Oracle:

oracle-instantclient-basiclite
oracle-instantclient-devel
oracle-instantclient-sqlplus

Apoi, instalați PHP OCI8: Vezi Aici, începând cu pasul 7. Pentru a rezuma: Comanda principală care trebuie emisă este să o instalați prin PHP PECL:

pecl install oci8 # PHP 8
pecl install oci8-2.2.0 # PHP 7.x

Nu în ultimul rând, asigurați-vă că php.ini (în funcție de dacă utilizați PHP-CLI sau PHP-FPM, poate fi /etc/php/VERSION/php-cli sau /etc/php/VERSION/php-fpm, Unde VERSIUNE poate fi ceva de genul 7.4 sau 8.0) încarcă driverul OCI:

extensie=oci8
extensie=pdo_oci

Asta ar trebui să fie totul. Dacă există alte probleme, vă rugăm să consultați Wiki Ubuntu pe care l-am legat mai sus. Pentru mine, acești pași au fost suficienți.

$dbconn = PDO nou('oci:dbname=MY_CONNENCTION', 'nume utilizator', 'pa55w0rd');

MY_CONNECTION poate fi fie numele prevăzut în fișier tnsnames.org, sau întregul șir lung de conexiune care este furnizat în partea dreaptă a egalelor (=) semnați fișierul tnsnames.ora, de obicei începând cu (DESCRIERE= sau (DESCRIPTION_LIST=.

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.