文書の過去の版を表示しています。
目次
mysql のステータス情報取得
mysqladmin コマンド
# mysqladmin status -p Uptime: 12016 Threads: 3 Questions: 305442 Slow queries: 38 Opens: 48 Flush tables: 1 Open tables: 30 Queries per second avg: 25.420 # mysqladmin processlist -p +-----+------+-----------+----------+---------+------+-------+------------------ + | Id | User | Host | db | Command | Time | State | Info | +-----+------+-----------+----------+---------+------+-------+------------------ + | 260 | skk | localhost | spamblog | Sleep | 110 | | | | 408 | skk | localhost | spamblog | Sleep | 4 | | | | 409 | skk | localhost | | Query | 0 | | show processlist | +-----+------+-----------+----------+---------+------+-------+------------------+
他のコマンドは、mysqladmin -help 参照。
mysql コマンドの日本語
% mysql -u skk -p mysql> use DATABASENAME; mysql> set NAMES ujis; (EUCにしたい場合)
- 上記により、クライアント側に表示される日本語を指定できる。
時間のかかるクエリーをログしておきたい。
# vi /usr/local/etc/my.cnf [mysqld] (この欄に追加) long_query_time=3 log-slow-queries=/var/log/mysql-slow.log # mysql restart (システム依存)
- 上記により、3秒以上かかるクエリーはログされる。
新規データベース作成
% mysql -u root -p mysql> create database hoge; Query OK, ...
- 注意: データベース名に - (ハイフン) はダメみたい.
バックアップ/リストア
// バックアップ % mysqladmin --all-databases > filename.sql // リストア % mysql < filename.sql
この後,一度 mysql を再起動しないと,ユーザ情報が反映されず,ログインできないかも.
- http://dev.mysql.com/doc/refman/4.1/ja/mysqldump.html mysql のウェブ説明.
update
- 一つ一つの値を変更する場合.
update <table name> set sales=500 where store_name = "los angels" and date = 'jan-08-1999';
- 一気に行う場合
update <table name> set key1=value1, key2=value2 where <条件>
インデックスに関して
テーブルへのカラムの追加
- alter を使う
mysql> alter table amp add unixtime int unsigned;