mysql> create database [DATABASE NAME];
mysql> drop database [DATABASE NAME];
mysql> GRANT ALL PRIVILEGES ON [DATABASE].* TO [USER]@'%' IDENTIFIED BY '[PASSWORD]';
mysql> DELETE FROM mysql.user WHERE user='[USER]' and host='[HOST]'; mysql> FLUSH PRIVILEGES;
mysql> SET PASSWORD FOR [USER]@[HOST]=PASSWORD('[PASSWORD]');
Ggrant all privileges on [DATABASE].* to [USER]@[HOST] identified by '[PASSWORD]';
mysql> GRANT all privileges ON *.* TO root with grant option;
mysql> show databases;
mysql> use mysql Reading table information for completion of table and column names You can turn off this feature to get a quicker startup with -A Database changed mysql> select Host,User from user;
select * from [TABLE NAME];
select * from [TABLE NAME] limit 1;
select count(*) from [TABLE NAME]
truncate table [TABLE NAME];
mysql> drop table [TABLE NAME];
テーブルをまとめて破棄する場合は下記の様なリストファイルを作成し、リダイレクトでリストを読み込んで一括削除する。
drop table [TABLE 1]; drop table [TABLE 2]; drop table [TABLE 3]; drop table [TABLE 4];
mysql -u [USER NAME] -p -h [HOST NAME] [DATABASE NAME] < droptable.sql
mysqldump -u [USER] --password=[PASSWORD] [DATABASE NAME] [TABLE NAME] [TABLE NAME] ... > [出力先ファイル名]
mysqldump -u [USER] --password=[PASSWORD] [DATABASE NAME] > [出力先ファイル名]
mysqldump -u [USER] --password=[PASSWORD] --all-databases > [出力先ファイル名]
mysql -u[USER] -p[PASSWORD] [DATABASE] < ダンプしたファイル
もしくは
cat ダンプしたファイル | mysql -u[USER] -p[PASSWORD] [DATABASE]
圧縮(gzip)ファイルからリストアする場合
zcat ダンプしたファイル.gz | mysql -u[USER] -p[PASSWORD] [DATABASE]
複数のダンプファイルをまとめてリストアする場合は、ダンプファイルの保管ディレクトリに移動後に下記を実行する。
cat *.dmp | mysql -u [USER NAME] -p -h [HOST NAME] [DATABASE]
キャラセット関連のシステム変数を確認するには、mysqlクライアントコマンドを起動し、キャラセットの環境変数を表示させる。
$ mysql Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 1 to server version: 5.0.26 Type 'help;' or '\h' for help. Type '\c' to clear the buffer. mysql>
キャラセットの環境変数は下記に表示させる
SHOW VARIABLES LIKE 'character\_set\_%';
下記の様な表示結果となる
mysql> SHOW VARIABLES LIKE 'character\_set\_%'; +--------------------------+--------+ | Variable_name | Value | +--------------------------+--------+ | character_set_client | utf8 | | character_set_connection | utf8 | | character_set_database | utf8 | | character_set_filesystem | binary | | character_set_results | utf8 | | character_set_server | utf8 | | character_set_system | utf8 | +--------------------------+--------+ 7 rows in set (0.01 sec)
作成済みユーザの一覧を表示するには下記を実行する。
mysql> use mysql; Database changed mysql> select user,host from user; +--------+-----------+ | user | host | +--------+-----------+ | mtuser | % | | mysql | % | | root | % | | | localhost | | root | localhost | | | mysql5 | | root | mysql5 | +--------+-----------+ 7 rows in set (0.00 sec)
DB内のテーブル一覧を表示するには以下のコマンドを使用する。
use [DB NAME] show tables;
テーブルのステータスを確認するには以下のコマンドを使用する。
使用しているDBエンジンの種類などが表示される。
use [DB NAME] show table status;
MyISAM→InnoDBへ変換する際には以下のコマンドを使用する。
alter table [TABLE NAME] ENGINE=INNODB;
SHOW TABLE STATUS [FROM db_name];
SQLを記述したテキストファイルからSQLを実行するには以下の操作を行う。
mysql -u root -p [DB NAME] < [SQL File]
テーブルが破損している可能性がある場合は以下の手順にて確認を行う。
MyISAM、InnoDB、ARCHIVEテーブルの場合には使用可能。
check table [TABLE NAME];
テーブルが破損している可能性がある場合は以下の手順にて修復を行う。
MyISAMテーブルの場合には使用可能。
repair table [TABLE NAME];
mysql -u root --password=[PASSWORD] -e "show databases;"
echo "show databases;" |mysql -u root --password=[PASSWORD]
echo "use [DB NAME]; show table status;" |mysql -u root --password=[PASSWORD]
select table_schema, sum(data_length+index_length) /1024 /1024 as MB from information_schema.tables group by table_schema order by sum(data_length+index_length) desc;
select table_schema, sum(data_length+index_length) /1024 /1024/1024 as GB from information_schema.tables group by table_schema order by sum(data_length+index_length) desc;
select table_schema, sum(data_length+index_length) /1024 /1024 as MB from information_schema.tables where table_schema = '[DATABASE NAME]';
truncate table [TABLE NAME];
truncate tableを行う際に以下の様なエラーが発生し、外部キー制約で処理が行えない場合に一時的に外部キー制約のチェックを無効化する。(データの整合性は自己責任)
MariaDB [zabbix]> TRUNCATE TABLE auditlog; ERROR 1701 (42000): Cannot truncate a table referenced in a foreign key constraint (略)
set foreign_key_checks = 0;
set foreign_key_checks = 1;