Mysql,你应该掌握的好习惯

自动更新时间

 

(1)更新某张表的某条记录时,应该同时更新它的update_time字段,这个操作可以无需在代码中完成

mysql>ALTER TABLE table_name MODIFY COLUMN update_time TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP;

(2)去掉同时更新update_time 字段的属性,比如说需要用到该字段排序的业务中 

ALTER TABLE product_category MODIFY update_time datetime(0) DEFAULT NULL ;

 

添加索引


(1)添加INDEX(普通索引)

mysql>ALTER TABLE `table_name` ADD INDEX index_name ( `column` )

 

(2)添加UNIQUE(唯一索引)
mysql>ALTER TABLE `table_name` ADD UNIQUE ( `column` )

 

(3)添加PRIMARY KEY(主键索引)

mysql>ALTER TABLE `table_name` ADD PRIMARY KEY ( `column` )

 

(4)添加FULLTEXT(全文索引)

mysql>ALTER TABLE `table_name` ADD FULLTEXT ( `column`)

 

(5)添加多列索引
mysql>ALTER TABLE `table_name` ADD INDEX index_name ( `column1`, `column2`, `column3` )

 

聚合分组

select category,group_concat(id) from takeaway_merchant_info group by category;

  

该业务场景为“美团外卖”根据分类id,查询分类下的商家主键id,返回结果如下:

 

 

开启bin-log

在/etc/my.cnf 配置文件添加以下两行:

[mysqld]

log-bin=/var/lib/mysql/mysql-bin

如果是5.7以上版本需要指定:server-id=1 (多机器不能重复)

 

重启mysql,查看是否开启成功:

show variables like '%log_bin%'

 

 

 如上图所示,则表示开启成功。

posted @ 2020-06-02 16:03  哦克Oak  阅读(174)  评论(0编辑  收藏  举报