基本†MySQL接続†$ mysql -u USER パスワードを使用する場合 $ mysql -u USER -p 対象とするデータベースの宣言†mysql> use DBNAME; データベース操作†データベース作成†mysql> create database DBNAME default character set utf8; データベース削除†mysql> drop database DBNAME; データベースの文字コードを変更†mysql> alter database DATABASE character set utf8; データベース確認†mysql> show databases; テーブル確認†mysql> show tables from DBNAME; mysql> show tables; テーブル構造確認†mysql> show create table TABLE; mysql> desc TABLE; テーブルの文字コードを変更†mysql> alter table TABLE default character set utf8; テーブルの状態を確認†mysql> show table status like 'TABLE'\G 照合順序を確認†いずれもCollationフィールドが照合順序になります。 テーブルの場合 mysql> show table status from DBNAME; カラムの場合 mysql> show full columns from TABLE; ユーザーと権限†ユーザー作成†mysql> create user 'USER'@'localhost'; mysql> create user 'USER'@'localhost' identified by 'PASSWORD'; ユーザー削除†mysql> drop user 'USER'@'localhost'; パスワード変更†mysql> SET PASSWORD FOR root@localhost = PASSWORD('pass'); ユーザーの確認†mysql> select host, user from mysql.user; データベース作成の権限を付与†mysql> grant create on *.* to 'USER'@'localhost'; テーブル操作の権限を付与†mysql> grant select,update,insert,delete on DB.* to 'USER'@'localhost'; 権限の剥奪†mysql> revoke all on DB.* from 'USER'@'localhost'; 権限の確認†mysql> show grants for 'USER'@'localhost'; auto_increment†auto_incrementの確認†次に割り振られる番号が表示されます。 mysql> SELECT auto_increment FROM information_schema.tables WHERE table_name = 'TABLE'; auto_incrementの変更†次に割り振りたい番号を指定。 mysql> ALTER TABLE autoincrement_test AUTO_INCREMENT=4; ログ†実行されたSQL文を記録する†# vi /etc/my.cnf [mysqld] general_log=1 log_output=FILE general_log_file=/var/log/mysqld_query.log # service mysqld restart バックアップとリストア†バックアップ†$ mysqldump -u USER -p DBNAME > DBDATA.DUMP 特定のテーブルのみをバックアップする場合 $ mysqldump -u USER -p DBNAME TABLENAME > DBDATA.DUMP 文字化けする場合は以下のオプションを付けてみる --default-character-set=binary 復元†データベースは作成しておいてテーブルは無い状態にしておく $ mysql -u USER -p DBNAME < DBDATA.DUMP |