LibreOffice BaseからMariaDBへ接続する
LibreOffice Base(以降Base)とMariaDBを接続してみる。接続環境は、Linux mint 20.3 MATE、MariaDB 10.7.3、LibreOffice 7.3.2.2、接続方法はJDBCである。BaseからMariaDBに接続するには、LibreOfficeにドライバファイルを登録する必要がある。ドライバファイルなしに、いきなりBaseを実行しても接続することができないといっていい。まずはドライバファイルを探してダウンロードする。
ドライバファイルのダウンロード
ダウンロードするドライバファイル名は、mariadb-java-client-2.7.5.jarである。下記のサイトからファイルをダウンロードする。
右側にある「DOWNLOAD」をクリックし、ダウンロードページに移動する。ダウンロードページの[Connectors]タブをクリックして、Productをクリックして、リストからJava 8+ connectorを選択する。Versionは3.0.4-GAとなっているが、クリックして2.7.5-GAを選択する。3.0.4-GAでは接続を確立できなかった。
下にある[Download]をクリックする。「この種類のファイルはコンピュータに損害を与える可能性があります。」というメッセージが表示されるかもしれないが、問題ないので[保存]をクリックする。ただし、信頼できるサイトからダウンロードする場合は構わないが、信頼できそうにないサイトからはダウンロードするのは避ける。
ドライバファイルの配置
ダウンロードしたら、ファイルの名前を「mariadb-java-client-2.7.5.jar」から「mariadb-java-client.jar」に変更し、適切な場所「/usr/share/java」へ移動する(Linux mintの場合)。
ダウンロードしたファイルがあるディレクトリ内でターミナルを起動して、下記のコマンドを実行する。
sudo mv mariadb-java-client.jar /usr/share/java/
ドライバファイルの登録
LibreOfficeを起動して上部メニュー「ツール」から「オプション(O)…」を選択する。なお、起動するのはWriterでもCalcでも構わない。
詳細オプションの設定
オプション画面が開いたら、[詳細]をクリックして、「Javaオプション」の[クラスパス(C)…]をクリック、[アーカイブを追加(A)…]をクリックして、配置したドライバファイルを選択する。最後に[OK]をクリックする。
LibreOffice Baseオプションの設定
この設定をしなくとも接続できるようである。とりあえずではあるが念の為に設定しておく。
「接続」をクリック、「ドライバーを使って接続を保持する(B)」にチェックを入れ、一覧から「com.sun.star.comp.sdbc.JDBCDriver」を選択して、「このドライバーで接続を保持する(A)」にチェックを入れて[適用]をクリック、[OK]をクリックする。LibreOfficeの再起動を求められるので再起動する。
Baseの接続設定
Baseを起動する前に、必ずデータベースファイルを作成しておく。Baseでは、DBeaverのようにデータベースファイルを作成することはできない。今回は接続テストのため、前記事「DBeaver入門(2) – サンプルデータベースの作成」で作成したbooksdbを使用する。作成していなくとも、Mariadbをターミナルから起動して、同じ名前の空のデータベースを作成しておけばよい。
create database booksdb;
Baseを起動する。ウィザード形式で接続設定をしていく。
データベースの選択
データベースの選択では、「既存のデータベースに接続(X)」にチェックを入れ、「MySQL」を選択して[次へ(N) >]をクリックする。
MySQL 接続セットアップ
「JDBC(Java Database Connectivity)を使って接続(C)」にチェックが入っていることを確認して、[次へ(N) >]をクリックする。
JDBC 接続セットアップ
データベース名に「booksdb」、サーバー名に「localhost」を入力する。
ここで[テストクラス(T)]をクリックして、ドライバが正しく読み込まれているかどうか確認することができる。
ユーザー認証のセットアップ
ユーザー名に「root」を入力する。rootにパスワードを設定している場合は、「パスワードを要求する(Q)」にチェックを入れる。[接続テスト(T)]をクリックする。
設定してあるパスワードを入力して[OK]をクリックする。下記のポップアップが表示されれば接続完了である。
接続情報の保存
設定した情報を保存しておこう。今回は登録のみにした。Baseを実行してテーブルを操作したい場合は、「データベースを開いて編集します(A)」、併せて新しくテーブルを作成する場合は「テーブルウィザードを使ってテーブルを作成します(B)」にチェックを入れておく。最後に[完了(F)]をクリックする。
保存するファイル名を聞かれるので、適当な名前で保存する。ここでは、「booksdb.odf」とした。次回からは保存した「booksdb.odf」をダブルクリックするか、ファイル名上で右クリックして、表示されるコンテキストメニューから「LibreOffice Baseで開く(O)」を選択すればよい。