別のホストに接続するには -h を使います。ユーザ名を指定してログインするときは-uを使います。また、パスワードも入力してログインするときは、-pを使います。
mysql -h [IPアドレス] -u root -p
これだとパスワードを聞いてくるので、コマンドラインに直接パスワードを書きたい場合は
mysql -h [IPアドレス] -u root --password=hoge
Fedora Core release 3 (Heidelberg) にインストールしました。とりあえず、
MySQL-Max-5.0.15-0.i386.rpm MySQL-server-5.0.15-0.i386.rpm MySQL-client-5.0.15-0.i386.rpm <- Linux上のクライアント mysql-administrator-1.1.4-win.msi <- Windowsのクライアントとして
で動いてるっぽいです。
rpmでインストールした場合、
/usr/share/mysql/my-medium.cnf
などにあるみたいです。
DB Magazine 2004/12を読んだのですが、あらかじめ設定されているユーザ情報があると混乱するので、まずは消してからrootなどを新規作成した方がすっきりするとのこと。こんな感じでやってみました。
# mysql -p Enter password: Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 19 to server version: 5.0.15-standard mysql> truncate table mysql.user; Query OK, 0 rows affected (0.00 sec) mysql> flush privileges; Query OK, 0 rows affected (0.00 sec) mysql> select * from mysql.user; Empty set (0.00 sec) mysql> grant all privileges on *.* to 'root'@'localhost' identified by 'hogehoge' with grant option; Query OK, 0 rows affected (0.00 sec)
grantする前にログアウトしちゃうと、入れなくなっちゃうので注意!
あわせて、リモートで接続するためのIDも作成しておきます。
mysql> grant all privileges on webdb1.* to xxx identified by 'yyy'; Query OK, 0 rows affected (0.01 sec)
ところで
*.* to 'root'@'localhost' identified by 'hogehoge'
の意味は 全てのデータベースの全てのテーブル(*.*)にrootはlocalhostからのみ接続可能、パスワードはhogehoge という意味ですね。たとえばリモート接続可能で、webdb1というデータベースの全てのテーブルにアクセス可能なxxxというユーザを作成するには
webdb1.* to xxx identified by 'hogehoge'
となります。
mysqladmin variable
mysql -u xxxx -h xxx.xxx.xxx.xxx -p --default-character-set=ujis
など
mysqldump --all-databases > db.20070103.dat -u root --password=xxxx
mysqldump -a --user=root --password=xxxx [DB名] > hogehoge.sqlついでにリストア
mysql --user=root --password=xxxx [DB名] < hogehoge.sql
/var/lib/mysql/hogehoge.err
errっていっても標準出力もココのような。。。
バイナリログとは、いわゆるトランザクションのログです。実行されたSQL文が格納されています。 このログの書き込みファイル名をIncrementするのが以下のコマンドです。
$ mysqladmin flush-logs -u root --password=xxxxx
つまりこのファイルを
$ mysqlbinlog バイナリログファイル名
これでバイナリログを表示することができます。
この記事は
現在のアクセス:19529