sql >> Database teknologi >  >> RDS >> Mysql

Brug af MySQL med Oracle Heterogene Services

Oracle Database Gateways giver Oracle-klientapplikationer adgang til ikke-Oracle-databaser. For eksempel Oracle SQL Developer og MySQL. Oracle Database Gateways og Heterogene Services (indbygget i Oracle) præsenterer udseendet af en enkelt, lokal Oracle-database, selvom dataene kan være i Oracle, MySQL, SQL Server og så videre.

Oracle Database Gateway for ODBC (DG4ODBC) integrerer transparent ODBC-databaser med Oracle. ODBC giver en ensartet DBMS-grænseflade og isolerer applikationer fra databasen ved at bruge middleware kendt som en ODBC-driver til at oversætte applikationens anmodninger til noget, som databasen forstår. Fordi den bruger en ODBC-driver til at linke Oracle til måldatabasen, er DG4ODBC ikke bundet til en specifik database. Denne fleksible arkitektur gør det muligt for Oracle at sameksistere med enhver database, for hvilken der er en ODBC-driver tilgængelig.

Ved at bruge DG4ODBC kan du straks bruge dine Oracle-applikationer, både fra Oracle og tredjeparter, til at få adgang til oplysninger i en ODBC-database, som om det var en Oracle-database. Applikationer behøver ikke at blive omkodet eller omkonfigureret.

DG4ODBC kommer som en del af Oracle 11g og senere uden ekstra omkostninger og kan bruges med Oracle 10g og senere. For at integrere ODBC-databaser med tidligere versioner af Oracle, se vores HSODBC-vejledning.

Fordi DG4ODBC kan forbinde Oracle til enhver database, som en ODBC-driver er tilgængelig for, henviser Oracle til DG4ODBC som en generisk forbindelsesagent.

Du kan bruge en Easysoft ODBC-driver med DG4ODBC til at forbinde Oracle til MySQL. Trinene i denne vejledning er for MySQL og Oracle på Linux og UNIX.

  1. Tjek, om din version af DG4ODBC er 32-bit eller 64-bit:
    cd $ORACLE_HOME/bin
    file dg4odbc
                            

    Hvis file kommandoens output indeholder "ELF 64-bit LSB eksekverbar", eller noget lignende, DG4ODBC er 64-bit, download 64-bit MySQL ODBC-driveren til din platform.

    Ellers skal du downloade 32-bit MySQL ODBC-driveren til din platform.

  2. Installer, licenser og test MYSQL ODBC-driveren på den maskine, hvor DG4ODBC er installeret.

    For installationsinstruktioner, se MySQL ODBC-driverdokumentationen. Se dokumentationen for at se, hvilke miljøvariabler du skal indstille (LD_LIBRARY_PATH , LIBPATH , LD_RUN_PATH eller SHLIB_PATH afhængig af platform og linker).

  3. Opret en DG4ODBC init-fil. For eksempel:
    cd $ORACLE_HOME/hs/admin
    cp initdg4odbc.ora initmysql.ora
                            
  4. Sørg for, at disse parametre og værdier er til stede i din init-fil:
    HS_FDS_CONNECT_INFO = mysql_odbc_dsn
    HS_FDS_SHAREABLE_NAME = /usr/local/easysoft/unixODBC/lib/libodbc.so
                            

    Erstat mysql_odbc_dsn med navnet på en MySQL ODBC-driverdatakilde, der forbinder til MySQL-måldatabasen.

    Hvis din MySQL-server ikke gør det kræver, at du angiver et brugernavn og en adgangskode, skal du inkludere IgnoreAuth=Yes i HS_FDS_CONNECT_INFO parameterværdi. For eksempel:

    HS_FDS_CONNECT_INFO = "mysql_odbc_dsn;IgnoreAuth=Yes"
    
  5. Tilføj denne linje for at øge Oracle/MySQL-kompatibiliteten:
    HS_FDS_QUOTE_IDENTIFIER = FALSE
    
  6. Tilføj en post til $ORACLE_HOME/network/admin/listener.ora der opretter en SID_NAME for DG4ODBC. For eksempel:
    SID_LIST_LISTENER =
     (SID_LIST =
       (SID_DESC=
         (SID_NAME=mysql)
         (ORACLE_HOME=oracle_home_directory)
         (PROGRAM=dg4odbc)
         (ENVS=LD_LIBRARY_PATH = /usr/local/easysoft/unixODBC/lib:
                /usr/local/easysoft/lib)
       )
     )
    
                            

    Erstat oracle_home_directory med værdien $ORACLE_HOME . For eksempel /u01/app/oracle/product/11.2.0/dbhome_1/ .

  7. Tilføj en DG4ODBC-post til $ORACLE_HOME/network/admin/tnsnames.ora der specificerer SID_NAME oprettet i det forrige trin. For eksempel:
    mysql_connection=
     (DESCRIPTION=
       (ADDRESS=(PROTOCOL=TCP)(HOST=oracle_host)(PORT=1521))
       (CONNECT_DATA= (SID=mysql))
       (HS=OK)
     )
                            
  8. Start (eller genstart) Oracle Listener:
    cd $ORACLE_HOME/bin
    ./lsnrctl stop
    ./lsnrctl start
                            
  9. Opret forbindelse til din Oracle-database i SQL*Plus.
  10. I SQL*Plus skal du oprette et databaselink til MySQL-måldatabasen. For eksempel:
    CREATE PUBLIC DATABASE LINK mysqllink CONNECT TO
    "dbuser" IDENTIFIED BY "dbpassword" using 'mysql_connection';
                            

    Erstat dbuser og dbpassword med et gyldigt brugernavn og adgangskode til MySQL-måldatabasen.

    – Eller hvis din MySQL-server ikke gør det kræver, at du angiver et brugernavn og en adgangskode:

    CREATE PUBLIC DATABASE LINK mysqllink USING 'mysql';
    

  1. Hvordan nuværende_dato virker i PostgreSQL

  2. Sådan returneres oracle-outputparametre fra en lagret procedure i .NET

  3. serie i postgres bliver øget, selvom jeg tilføjede om konflikt gør ingenting

  4. Docker:Kombiner flere billeder