1. MYSQL 主从式读写分离
https://hoohoo.top/blog/mysql-master-slave-reading-and-writing-separation/
主 (Master)
首先,在设定主资料库时,必须先配置好 log-bin ,并且指定要储存「二进位」的路径,并且在操作资料存取过程会再透过 binary log event 将资料写入 master binary log。
从 (Slave)
完成写入二进位制的纪录后,Master会再通知储存引擎,让 Slave 将 master binary log 複製到中继 log,过程会是从 Master 发起一个 I/O 来开启一个连线,接着执行 binlog dump process,这个 binlog dump process 大部分时间都会处于休眠状态,当 master 接收到资料写入 master binary log 时,bingo dump process 就会将资料进行读取,接着会从中继资料会被 SQL 线程读取,并且存回 Slave 资料库。
小提醒,在设定 Slave 资料库时,建议以 MyISAM 引擎增加读取性能。
简单说写入更新写进Master,Slave只有读,讨论到这个部分是因为
GORM语法,通常MasterDB 及 SlaveDB 自己就已经设定好了,就无需下这个
Name string gorm:"<-:create" // 允许读和创建 Name string gorm:"<-:update" // 允许读和更新
2. 通常实务上删掉栏位资料,并不是真正删除,而是多一个栏位纪录何时删除
type User struct { deleteAt}