dak ブログ

python、rubyなどのプログラミング、MySQL、サーバーの設定などの備忘録。レゴの写真も。

mysql で遅いクエリを調べる方法

2019-04-24 18:31:26 | mysql
mysql で遅いクエリを調べる方法のメモ。

show processlist で実行中のクエリを見ることはできますが、
実行時間順にソートされていません。

performance DBの threads テーブルに対して、processlist_time でソートすると
実行時間順でソートした検索ができます。
mysql> select * from performance_schema.threads order by processlist_time asc\G

*************************** 1. row ***************************
          THREAD_ID: 3533337
               NAME: thread/sql/one_connection
               TYPE: FOREGROUND
     PROCESSLIST_ID: 3533304  ★★★
   PROCESSLIST_USER: XXXXXXXX
   PROCESSLIST_HOST: XXX.XXX.XXX.XXX
     PROCESSLIST_DB: XXXXXXXXXXXXX
PROCESSLIST_COMMAND: Query
   PROCESSLIST_TIME: 1540  ★★★
  PROCESSLIST_STATE: Creating sort index
   PROCESSLIST_INFO: ... 
...


遅いクエリを終了させたければ、PROCESSLIST_ID を指定して kill すればOKです。
mysql> kill 3533304;




boost のインストールメモ

2019-04-13 22:53:45 | linux
boost をインストールした際のメモ。

■事前準備
python の include ディレクトリにリンクを貼っておく
cd ~/.pyenv/versions/3.6.5/include
ln -s python3.6m python3.6


■インストール
gtar zxvf boost_1_70_0.tar.gz
cd boost_1_70_0
./bootstrap.sh --with-python-root=~/.pyenv/versions/3.6.5
./b2
./b2 install --prefix=~/local/boost



cmake でインストール先を指定する方法

2019-04-13 20:32:18 | linux
cmake でインストール先を指定する方法のメモ。

インストールしたいモジュールを展開したディレクトリで以下を実行。
mkdir build
cd build
cmake .. -DCMAKE_INSTALL_PREFIX=インストール先のディレクトリ
make install


インストール先のディレクトリとして /home/xxx/localを指定すると、
/home/xxx/local/{bin,lib,include}などにインストールされます。