memorandum

IT技術の習得を記録します

show create table

tableの情報を確認する

mysql> show create table test;
+-------+----------------------------------------------------------------------------------------------------------------------------------------------------------+
| Table | Create Table                                                                                                                                             |
+-------+----------------------------------------------------------------------------------------------------------------------------------------------------------+
| test  | CREATE TABLE `test` (
  `test` int(11) DEFAULT NULL,
  `name` varchar(20) DEFAULT NULL,
  `id` int(11) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8 |
+-------+----------------------------------------------------------------------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)

mysqlで特定のカラムにindexをつける

#testというテーブルのidカラムにindexをつける
alter table test add index idx(id);
#実行計画をみる
explain select id from test where id = 200;

rowsが1になっているので検索時はidが200のものだけを検索している f:id:IT_expertise_diary:20170304181247p:plain

indexをつけないと948640行の中から探し出している f:id:IT_expertise_diary:20170304181518p:plain

mysqlのバックアップをとる mysqldump

データベースごとバックアップを取るとき

mysqldump -u root データベースの名前 > dmp.sql

特定のテーブルをバックアップを取るとき

mysqldump -u root データベースの名前 テーブルの名前 > dmp.sql

取り込むとき

mysql -u root データベースの名前 < dmp.sql

git add -p 編集したスクリプトを箇所ごとにコミットをわける

編集をいくつかした後

git add -p

Stage this hunk [y,n,q,a,d,/,s,e,?]?

にはsを入力

編集した項目が表示されて、これをコミットするか?と聞いてくるので 

コミットしたい場合は y 

したくない場合は n 

yの項目がなくなったらqで終了

参考

横着で神経質な私とあなたに贈るgit add -p - Qiita

=>リファクタリングだけ、後でコミットしたい場合は 

それだけnにして、他をコミットする