操作Tips
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
]
開始行:
*MySQL 操作Tips [#g033249a]
#contents
**データベースの作成 [#s51dfabe]
mysql> create database [DATABASE NAME];
**データベースの削除 [#w283a78e]
mysql> drop database [DATABASE NAME];
**ユーザ作成(接続元無制限) [#qac4c517]
mysql> GRANT ALL PRIVILEGES ON [DATABASE].* TO [USER]@'%...
**ユーザ削除 [#v8d7a4e0]
mysql> DELETE FROM mysql.user WHERE user='[USER]' and ho...
mysql> FLUSH PRIVILEGES;
**パスワード変更 [#o348ae66]
mysql> SET PASSWORD FOR [USER]@[HOST]=PASSWORD('[PASSWOR...
**grantコマンドの引数 [#k6e71ac4]
Ggrant all privileges on [DATABASE].* to [USER]@[HOST] i...
**rootユーザにフルアクセス権限を付与する [#y24c7675]
mysql> GRANT all privileges ON *.* TO root with grant op...
**databaseを表示 [#e682d5dc]
mysql> show databases;
**ユーザ・ホスト一覧を表示 [#m97e9c3c]
mysql> use mysql
Reading table information for completion of table and co...
You can turn off this feature to get a quicker startup w...
Database changed
mysql> select Host,User from user;
**テーブルの中身を表示 [#id1fff86]
-全件を表示
select * from [TABLE NAME];
~
-末尾の1行のみを表示
select * from [TABLE NAME] limit 1;
**テーブル内のレコード件数を表示 [#g889bee6]
select count(*) from [TABLE NAME]
**テーブルの中身を消去 [#q5a8af4c]
truncate table [TABLE NAME];
**テーブルの破棄 [#a2063d8b]
mysql> drop table [TABLE NAME];
テーブルをまとめて破棄する場合は下記の様なリストファイル...
-リスト(droptable.sql)
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] <...
**データベースのダンプ作成(特定のTable) [#k51d940c]
mysqldump -u [USER] --password=[PASSWORD] [DATABASE NAME...
**データベースのダンプ作成(特定のDB) [#k51d940c]
mysqldump -u [USER] --password=[PASSWORD] [DATABASE NAME...
**データベースのダンプ作成(全てのDB) [#icba34ef]
mysqldump -u [USER] --password=[PASSWORD] --all-database...
**ダンプファイルのリストア [#fd793267]
mysql -u[USER] -p[PASSWORD] [DATABASE] < ダンプしたファ...
もしくは
cat ダンプしたファイル | mysql -u[USER] -p[PASSWORD] [DA...
~
~
圧縮(gzip)ファイルからリストアする場合
zcat ダンプしたファイル.gz | mysql -u[USER] -p[PASSWORD]...
**複数のダンプファイルを一括リストア [#q685220f]
複数のダンプファイルをまとめてリストアする場合は、ダンプ...
cat *.dmp | mysql -u [USER NAME] -p -h [HOST NAME] [DATA...
**文字コードの確認 [#zdb4ba63]
キャラセット関連のシステム変数を確認するには、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 bu...
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)
**ユーザの一覧を表示 [#g21e891c]
作成済みユーザの一覧を表示するには下記を実行する。
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)
**テーブルの一覧を表示する [#u0cf5ebb]
DB内のテーブル一覧を表示するには以下のコマンドを使用する。
use [DB NAME]
show tables;
**テーブルのステータス確認 [#l282ac30]
テーブルのステータスを確認するには以下のコマンドを使用す...
使用しているDBエンジンの種類などが表示される。~
use [DB NAME]
show table status;
**DBの変換 [#m4ef4965]
MyISAM→InnoDBへ変換する際には以下のコマンドを使用する。
alter table [TABLE NAME] ENGINE=INNODB;
**DBの容量を確認する [#ec9dc6b1]
SHOW TABLE STATUS [FROM db_name];
**SQLファイルからSQLを実行する [#zac39e90]
SQLを記述したテキストファイルからSQLを実行するには以下の...
mysql -u root -p [DB NAME] < [SQL File]
**テーブルの破損チェック[#bad88774]
テーブルが破損している可能性がある場合は以下の手順にて確...
MyISAM、InnoDB、ARCHIVEテーブルの場合には使用可能。~
-破損チェック
check table [TABLE NAME];
-参考URL~
http://dev.mysql.com/doc/refman/5.1/ja/check-table.html~
**テーブルの破損修復[#bad88774]
テーブルが破損している可能性がある場合は以下の手順にて修...
MyISAMテーブルの場合には使用可能。~
-破損の修復
repair table [TABLE NAME];
**シェル上からSQLを発行 [#qf28d05e]
-単コマンドの実行
mysql -u root --password=[PASSWORD] -e "show databases;"
~
echo "show databases;" |mysql -u root --password=[PASSWO...
-DBを指定して実行
echo "use [DB NAME]; show table status;" |mysql -u root ...
**データベースサイズを調べる [#q93e7935]
-MB単位で表示
select table_schema, sum(data_length+index_length) /1024...
-GB単位で表示
select table_schema, sum(data_length+index_length) /1024...
-特定のDBのサイズを調べる
select table_schema, sum(data_length+index_length) /1024...
**テーブルの中身を消す [#u4400517]
-テーブル内のデータを全て削除
truncate table [TABLE NAME];
**外部キー制約の解除 [#a9d1c646]
truncate tableを行う際に以下の様なエラーが発生し、外部キ...
-外部キー制約エラー
MariaDB [zabbix]> TRUNCATE TABLE auditlog;
ERROR 1701 (42000): Cannot truncate a table referenced i...
~
-外部キー制約のチェックを無効化
set foreign_key_checks = 0;
-外部キー制約のチェックを有効化
set foreign_key_checks = 1;
終了行:
*MySQL 操作Tips [#g033249a]
#contents
**データベースの作成 [#s51dfabe]
mysql> create database [DATABASE NAME];
**データベースの削除 [#w283a78e]
mysql> drop database [DATABASE NAME];
**ユーザ作成(接続元無制限) [#qac4c517]
mysql> GRANT ALL PRIVILEGES ON [DATABASE].* TO [USER]@'%...
**ユーザ削除 [#v8d7a4e0]
mysql> DELETE FROM mysql.user WHERE user='[USER]' and ho...
mysql> FLUSH PRIVILEGES;
**パスワード変更 [#o348ae66]
mysql> SET PASSWORD FOR [USER]@[HOST]=PASSWORD('[PASSWOR...
**grantコマンドの引数 [#k6e71ac4]
Ggrant all privileges on [DATABASE].* to [USER]@[HOST] i...
**rootユーザにフルアクセス権限を付与する [#y24c7675]
mysql> GRANT all privileges ON *.* TO root with grant op...
**databaseを表示 [#e682d5dc]
mysql> show databases;
**ユーザ・ホスト一覧を表示 [#m97e9c3c]
mysql> use mysql
Reading table information for completion of table and co...
You can turn off this feature to get a quicker startup w...
Database changed
mysql> select Host,User from user;
**テーブルの中身を表示 [#id1fff86]
-全件を表示
select * from [TABLE NAME];
~
-末尾の1行のみを表示
select * from [TABLE NAME] limit 1;
**テーブル内のレコード件数を表示 [#g889bee6]
select count(*) from [TABLE NAME]
**テーブルの中身を消去 [#q5a8af4c]
truncate table [TABLE NAME];
**テーブルの破棄 [#a2063d8b]
mysql> drop table [TABLE NAME];
テーブルをまとめて破棄する場合は下記の様なリストファイル...
-リスト(droptable.sql)
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] <...
**データベースのダンプ作成(特定のTable) [#k51d940c]
mysqldump -u [USER] --password=[PASSWORD] [DATABASE NAME...
**データベースのダンプ作成(特定のDB) [#k51d940c]
mysqldump -u [USER] --password=[PASSWORD] [DATABASE NAME...
**データベースのダンプ作成(全てのDB) [#icba34ef]
mysqldump -u [USER] --password=[PASSWORD] --all-database...
**ダンプファイルのリストア [#fd793267]
mysql -u[USER] -p[PASSWORD] [DATABASE] < ダンプしたファ...
もしくは
cat ダンプしたファイル | mysql -u[USER] -p[PASSWORD] [DA...
~
~
圧縮(gzip)ファイルからリストアする場合
zcat ダンプしたファイル.gz | mysql -u[USER] -p[PASSWORD]...
**複数のダンプファイルを一括リストア [#q685220f]
複数のダンプファイルをまとめてリストアする場合は、ダンプ...
cat *.dmp | mysql -u [USER NAME] -p -h [HOST NAME] [DATA...
**文字コードの確認 [#zdb4ba63]
キャラセット関連のシステム変数を確認するには、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 bu...
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)
**ユーザの一覧を表示 [#g21e891c]
作成済みユーザの一覧を表示するには下記を実行する。
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)
**テーブルの一覧を表示する [#u0cf5ebb]
DB内のテーブル一覧を表示するには以下のコマンドを使用する。
use [DB NAME]
show tables;
**テーブルのステータス確認 [#l282ac30]
テーブルのステータスを確認するには以下のコマンドを使用す...
使用しているDBエンジンの種類などが表示される。~
use [DB NAME]
show table status;
**DBの変換 [#m4ef4965]
MyISAM→InnoDBへ変換する際には以下のコマンドを使用する。
alter table [TABLE NAME] ENGINE=INNODB;
**DBの容量を確認する [#ec9dc6b1]
SHOW TABLE STATUS [FROM db_name];
**SQLファイルからSQLを実行する [#zac39e90]
SQLを記述したテキストファイルからSQLを実行するには以下の...
mysql -u root -p [DB NAME] < [SQL File]
**テーブルの破損チェック[#bad88774]
テーブルが破損している可能性がある場合は以下の手順にて確...
MyISAM、InnoDB、ARCHIVEテーブルの場合には使用可能。~
-破損チェック
check table [TABLE NAME];
-参考URL~
http://dev.mysql.com/doc/refman/5.1/ja/check-table.html~
**テーブルの破損修復[#bad88774]
テーブルが破損している可能性がある場合は以下の手順にて修...
MyISAMテーブルの場合には使用可能。~
-破損の修復
repair table [TABLE NAME];
**シェル上からSQLを発行 [#qf28d05e]
-単コマンドの実行
mysql -u root --password=[PASSWORD] -e "show databases;"
~
echo "show databases;" |mysql -u root --password=[PASSWO...
-DBを指定して実行
echo "use [DB NAME]; show table status;" |mysql -u root ...
**データベースサイズを調べる [#q93e7935]
-MB単位で表示
select table_schema, sum(data_length+index_length) /1024...
-GB単位で表示
select table_schema, sum(data_length+index_length) /1024...
-特定のDBのサイズを調べる
select table_schema, sum(data_length+index_length) /1024...
**テーブルの中身を消す [#u4400517]
-テーブル内のデータを全て削除
truncate table [TABLE NAME];
**外部キー制約の解除 [#a9d1c646]
truncate tableを行う際に以下の様なエラーが発生し、外部キ...
-外部キー制約エラー
MariaDB [zabbix]> TRUNCATE TABLE auditlog;
ERROR 1701 (42000): Cannot truncate a table referenced i...
~
-外部キー制約のチェックを無効化
set foreign_key_checks = 0;
-外部キー制約のチェックを有効化
set foreign_key_checks = 1;
ページ名: