MySQL ÁàºîTips

¥Ç¡¼¥¿¥Ù¡¼¥¹¤ÎºîÀ®

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]');

grant¥³¥Þ¥ó¥É¤Î°ú¿ô

Ggrant all privileges on [DATABASE].* to [USER]@[HOST] identified by '[PASSWORD]';

root¥æ¡¼¥¶¤Ë¥Õ¥ë¥¢¥¯¥»¥¹¸¢¸Â¤òÉÕÍ¿¤¹¤ë

mysql> GRANT all privileges ON *.* TO root with grant option;

database¤òɽ¼¨

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];

  • ËöÈø¤Î1¹Ô¤Î¤ß¤òɽ¼¨
    select * from [TABLE NAME] limit 1;

¥Æ¡¼¥Ö¥ëÆâ¤Î¥ì¥³¡¼¥É·ï¿ô¤òɽ¼¨

select count(*) from [TABLE NAME]

¥Æ¡¼¥Ö¥ë¤ÎÃæ¿È¤ò¾Ãµî

truncate table [TABLE NAME];

¥Æ¡¼¥Ö¥ë¤ÎÇË´þ

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] < droptable.sql

¥Ç¡¼¥¿¥Ù¡¼¥¹¤Î¥À¥ó¥×ºîÀ®¡ÊÆÃÄê¤ÎTable¡Ë

mysqldump -u [USER] --password=[PASSWORD] [DATABASE NAME] [TABLE NAME] [TABLE NAME] ... > [½ÐÎÏÀè¥Õ¥¡¥¤¥ë̾]

¥Ç¡¼¥¿¥Ù¡¼¥¹¤Î¥À¥ó¥×ºîÀ®¡ÊÆÃÄê¤ÎDB¡Ë

mysqldump -u [USER] --password=[PASSWORD] [DATABASE NAME] > [½ÐÎÏÀè¥Õ¥¡¥¤¥ë̾]

¥Ç¡¼¥¿¥Ù¡¼¥¹¤Î¥À¥ó¥×ºîÀ®¡ÊÁ´¤Æ¤ÎDB¡Ë

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;

DB¤ÎÊÑ´¹

MyISAM¢ªInnoDB¤ØÊÑ´¹¤¹¤ëºÝ¤Ë¤Ï°Ê²¼¤Î¥³¥Þ¥ó¥É¤ò»ÈÍѤ¹¤ë¡£

alter table [TABLE NAME] ENGINE=INNODB;

DB¤ÎÍÆÎ̤ò³Îǧ¤¹¤ë

SHOW TABLE STATUS [FROM db_name];

SQL¥Õ¥¡¥¤¥ë¤«¤éSQL¤ò¼Â¹Ô¤¹¤ë

SQL¤òµ­½Ò¤·¤¿¥Æ¥­¥¹¥È¥Õ¥¡¥¤¥ë¤«¤éSQL¤ò¼Â¹Ô¤¹¤ë¤Ë¤Ï°Ê²¼¤ÎÁàºî¤ò¹Ô¤¦¡£

mysql -u root -p [DB NAME] < [SQL File]

¥Æ¡¼¥Ö¥ë¤ÎÇË»¥Á¥§¥Ã¥¯

¥Æ¡¼¥Ö¥ë¤¬ÇË»¤·¤Æ¤¤¤ë²ÄǽÀ­¤¬¤¢¤ë¾ì¹ç¤Ï°Ê²¼¤Î¼ê½ç¤Ë¤Æ³Îǧ¤ò¹Ô¤¦¡£
MyISAM¡¢InnoDB¡¢ARCHIVE¥Æ¡¼¥Ö¥ë¤Î¾ì¹ç¤Ë¤Ï»ÈÍѲÄǽ¡£

  • ÇË»¥Á¥§¥Ã¥¯
    check table [TABLE NAME];

¥Æ¡¼¥Ö¥ë¤ÎÇË»½¤Éü

¥Æ¡¼¥Ö¥ë¤¬ÇË»¤·¤Æ¤¤¤ë²ÄǽÀ­¤¬¤¢¤ë¾ì¹ç¤Ï°Ê²¼¤Î¼ê½ç¤Ë¤Æ½¤Éü¤ò¹Ô¤¦¡£
MyISAM¥Æ¡¼¥Ö¥ë¤Î¾ì¹ç¤Ë¤Ï»ÈÍѲÄǽ¡£

  • ÇË»¤Î½¤Éü
    repair table [TABLE NAME];

¥·¥§¥ë¾å¤«¤éSQL¤òȯ¹Ô

  • ñ¥³¥Þ¥ó¥É¤Î¼Â¹Ô
    mysql -u root --password=[PASSWORD] -e "show databases;"

    echo "show databases;" |mysql -u root --password=[PASSWORD]
  • DB¤ò»ØÄꤷ¤Æ¼Â¹Ô
    echo "use [DB NAME]; show table status;" |mysql -u root --password=[PASSWORD]

¥Ç¡¼¥¿¥Ù¡¼¥¹¥µ¥¤¥º¤òÄ´¤Ù¤ë

  • MBñ°Ì¤Çɽ¼¨
    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;
  • GBñ°Ì¤Çɽ¼¨
    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;
    
  • ÆÃÄê¤ÎDB¤Î¥µ¥¤¥º¤òÄ´¤Ù¤ë
    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;

¥È¥Ã¥×   ÊÔ½¸ Åà·ë º¹Ê¬ ŽÊŽÞŽ¯Ž¸Ž±Ž¯ŽÌŽß źÉÕ Ê£À½ ̾Á°Êѹ¹ ¥ê¥í¡¼¥É   ¿·µ¬ °ìÍ÷ ¸¡º÷ ºÇ½ª¹¹¿·   ¥Ø¥ë¥×   ºÇ½ª¹¹¿·¤ÎRSS
Last-modified: 2017-11-24 (¶â) 00:09:35 (2345d)