sql >> データベース >  >> RDS >> Access

Linux上のPHPをWindows共有上のMicrosoftAccessに接続する

    EasysoftのMicrosoftAccessODBCドライバーを使用すると、LinuxユーザーとWindowsユーザーの両方がそのデータベースにアクセスする必要がある環境でMDB/ACCDB形式のデータベースを操作できます。

    たとえば、Linuxサーバーに基づくイントラネットWebサイトでWindowsベースのAccessデータベースを公開したい場合があります。これは、このブログで取り上げた例です。

    これを行うには:

    1. Access ODBCドライバーをダウンロードし、LinuxWebサーバーマシンにインストールしてライセンスを取得します。
    2. odbc.iniのACCESS_SAMPLEデータソースを変更して、Windows共有のデータベースに接続するようにします。これを行うには:
      [ACCESS_SAMPLE]
      Driver=Easysoft ODBC-ACCESS
      # Path to the database on Linux machine
      mdbfile=/home/samba/ms_access/Northwind.accdb
      # The SMB URL for the database file. Use this syntax for the SMB URL:
      # smb://windows_host/share/path/filename
      smbpath=smb://windows_machine/accounts_share/ms_access/Northwind.accdb
      # The path to the libsmbclient library on the Access ODBC driver machine.
      smblib=/usr/lib/libsmbclient.so
      smbuser=my_windows_user
      smbauth=my_winodws_password
      readonly=yes
      exclusive=no
      ignore_rel=no
    3. uouがisqlで接続できることをテストします 。例:
      cd /usr/local/easysoft/unixODBC/bin
      ./isql.sh -v ACCESS_SAMPLE
    4. PHP PDO-ODBCパッケージをインストールし、Accessデータベースに接続するWebサーバーの下にPHPページを作成します。例:
      <?php
        $con = odbc_connect("odbc:ACCESS_SAMPLE", "", "");
        $err = odbc_errormsg();
        if (strlen($err) <> 0) {
          echo odbc_errormsg();
        } else {
          $rs2 = odbc_exec($con, "select * from Suppliers");
          odbc_result_all($rs2);
          odbc_close($con);
        }
      ?>

    Webサーバーが実行されているユーザーが実行されるように、アクセス許可を設定する必要があります。 www-dataは、Accessデータベースファイルへの書き込みアクセス権を持っています。


    1. SQL Server2014CTP1用の新しいVMを準備します

    2. SQLServerデータベースパフォーマンス監視プラットフォームが提供する必要のある上位5つの機能

    3. クラウドベンダーの詳細:Google Cloud Platform(GCP)上のPostgreSQL

    4. 要素の順序を無視して、配列が等しいかどうかを比較します