HammerDB 4.0がリリースされていた - 環境構築
HammerDB 4.0がリリースされていた - リリースノートチェック - なからなLife
の続きです。
CentOS7環境用意
いつものごとく、Windows10+VirtualBox+CentOS 7、または、AWS EC2+AmazonLinux2の環境を使用しています。
CentOS7をminimalインストールして、yum updateして最新に引き上げます。
あとfirewalldとselinuxはよしなに。
minimalだとwgetすら入ってないので、それくらいは入れておきましょう。
EC2+AmazonLinux2の場合も、yum updateして最新に引き上げます。
firewalldやselinuxはデフォルトで無効化されてたはず。
HammerDBのダウンロード&インストール
1つ前のv3.3から、リポジトリがsourceforgeからGithubに移っているので、間違えないように。
https://hammerdb.com/download.html
の
Release 4.0 for Linux 64-bit compressed tar file
のリンクURLをwgetで要求します。
# wget https://github.com/TPC-Council/HammerDB/releases/download/v4.0/HammerDB-4.0-Linux.tar.gz # tar zxvf HammerDB-4.0-Linux.tar.gz # ll total 4924 -rw-------. 1 root root 1640 Mar 15 14:06 anaconda-ks.cfg drwxr-xr-x. 10 1000 1000 212 Sep 15 23:17 HammerDB-4.0 -rw-r--r--. 1 root root 5036787 Nov 5 00:28 HammerDB-4.0-Linux.tar.gz # cd HammerDB-4.0 # ./hammerdbcli HammerDB CLI v4.0 Copyright (C) 2003-2020 Steve Shaw Type "help" for a list of commands The xml is well-formed, applying configuration
各種DBへの接続用ドライバ
ドライバライブラリ確認コマンド実行
HammerDBが各種DBに対して接続する際に利用するライブラリの設定状況は、この「librarycheck」で確認できます。
hammerdb>librarycheck Checking database library for Oracle Error: failed to load Oratcl - can't read "env(ORACLE_HOME)": no such variable Ensure that Oracle client libraries are installed and the location in the LD_LIBRARY_PATH environment variable Checking database library for MSSQLServer Error: failed to load tdbc::odbc - couldn't load file "libiodbc.so": libiodbc.so: cannot open shared object file: No such file or directory Ensure that MSSQLServer client libraries are installed and the location in the LD_LIBRARY_PATH environment variable Checking database library for Db2 Error: failed to load db2tcl - couldn't load file "/root/HammerDB-4.0/lib/db2tcl2.0.0/libdb2tcl.so.0.0.1": libdb2.so.1: cannot open shared object file: No such file or directory Ensure that Db2 client libraries are installed and the location in the LD_LIBRARY_PATH environment variable Checking database library for MySQL Error: failed to load mysqltcl - couldn't load file "/root/HammerDB-4.0/lib/mysqltcl-3.052/libmysqltcl3.052.so": libmysqlclient.so.21: cannot open shared object file: No such file or directory Ensure that MySQL client libraries are installed and the location in the LD_LIBRARY_PATH environment variable Checking database library for PostgreSQL Error: failed to load Pgtcl - couldn't load file "/root/HammerDB-4.0/lib/pgtcl2.1.1/libpgtcl2.1.1.so": libpq.so.5: cannot open shared object file: No such file or directory Ensure that PostgreSQL client libraries are installed and the location in the LD_LIBRARY_PATH environment variable hammerdb>
ざっと比較したところ、v3.3と要求ライブラリは変わっていなさそう。
というわけで、以前のエントリ通りに実行したら、Oracle、MySQL、PostgreSQLはlibrarycheckが「Success 」になりました。
以前のエントリ:HammerDBをCLIで使うなど(1):環境構築 - なからなLife
MySQL
# wget https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm # yum -y localinstall mysql80-community-release-el7-3.noarch.rpm # yum -y install mysql-community-client.x86_64
PostgreSQL
# yum -y install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm # yum -y install https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm # yum -y install postgresql13.x86_64
前回は10を入れて「11だとダメかも?」と書いてしまいましたが、現在、最新GA版である13を入れても大丈夫でした。
が、AmazonLinux2対応について、10以降は、
https://download.postgresql.org/pub/repos/yum/10/redhat/rhel-latest-x86_64/
に当たる階層がないため、さらに具体的なバージョン指定パスが必要になります。
今回は、以下を使用しています。
yum -y install https://download.postgresql.org/pub/repos/yum/13/redhat/rhel-7.9-x86_64/postgresql13-libs-13.2-1PGDG.rhel7.x86_64.rpm yum -y install https://download.postgresql.org/pub/repos/yum/13/redhat/rhel-7.9-x86_64/postgresql13-13.2-1PGDG.rhel7.x86_64.rpm
Oracle
# yum -y install https://download.oracle.com/otn_software/linux/instantclient/193000/oracle-instantclient19.3-basic-19.3.0.0.0-1.x86_64.rpm vi ~/.bash_profile (以下を追記) export ORACLE_HOME=/usr/lib/oracle/19.3/client64 export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATH export ORACLE_LIBRARY=$ORACLE_HOME/lib/libclntsh.so export PATH=$ORACLE_HOME/bin:$PATH # source ~/.bash_profile
再びlibrarycheck
hammerdb>librarycheck Checking database library for Oracle Success ... loaded library Oratcl for Oracle Checking database library for MSSQLServer Error: failed to load tdbc::odbc - couldn't load file "libiodbc.so": libiodbc.so: cannot open shared object file: No such file or directory Ensure that MSSQLServer client libraries are installed and the location in the LD_LIBRARY_PATH environment variable Checking database library for Db2 Error: failed to load db2tcl - couldn't load file "/root/HammerDB-4.0/lib/db2tcl2.0.0/libdb2tcl.so.0.0.1": libdb2.so.1: cannot open shared object file: No such file or directory Ensure that Db2 client libraries are installed and the location in the LD_LIBRARY_PATH environment variable Checking database library for MySQL Success ... loaded library mysqltcl for MySQL Checking database library for PostgreSQL Success ... loaded library Pgtcl for PostgreSQL
例によって?!MS SQL Serverとdb2は省略。
対SQL Serverについては、こちらの記事を紹介させていただきます。
HammerDB(CLI)でSQL Serverに負荷をかける - Qiita
環境構築はここまで。