mysql关于索引那些事儿
1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。 2.查询尽量走索引。可以使用 use index(create_time_index) 或者 force index(create_time_index) 强制走索引。 3.时间字段建索引,有可能反而会很慢。可以使用 ignore index(create_time_index) 强制不走索引 4.使用MAX等函数后不走索引,使用 order by limit 1; 例如(tb_user数据1000W): select max(rank) from tb_user; 需要3秒,但是 select rank from tb_user order by rank desc limit 1;只需要0.01秒。...
mysql大数据表加字段改名
select count(0) from product_detection select count(0) from product_detection_latest create table tmp like product_detection; insert into product_detection_latest select a.id, a.product_id, a.title, a.image_url, a.item_url, a.price, a.rating, a.sub_category, a.reviews_count, a.review_change, a.rank_number, a.country, a.brand, a.source, a.tag, a.category, a.create_time, a.reviews_count_latest, a.rating_latest, a.first_review_day, a.latest_review_day, a.period, a.base...
mysql大数据表添加字段
方案一、 1.创建一个临时的新表,复制旧表的结构 create table `tmp` like `goods`; 2.给新表加上新增的字段 ALTER TABLE `tmp` ADD COLUMN `num` int(10) NOT NULL DEFAULT 0 AFTER `unit`; 3.把旧表的数据复制过来 insert into tmp(id,name,unit) select id,name,unit from goods; 4.重命名 rename table goods to goods_bak; rename table tmp to goods; 方案二、升级MySQL的服务器版本 升级到高版本后 因为引入了新的算法:即时算法 所以会毫秒级别的加字段 不会对业务发布上线造成影响 ...
MySQL 查看执行计划
MySQL 查看执行计划 MySQL 使用 explain + sql 语句查看 执行计划,该执行计划不一定完全正确但是可以参考。 EXPLAIN <span class="hljs-keyword">SELECT</span> <span class="hljs-operator">*</span> <span class="hljs-keyword">FROM</span> <span class="hljs-keyword">user</span> <span class="hljs-keyword">WHERE</span> nid <span class="hljs-operator">=</span&g...
asp.net zero改mysql
官方let start教程: Getting Started Core | Documentation Center (aspnetzero.com) 1.找到项目 MyCompanyName.AbpZeroTemplate.EntityFrameworkCore,增加 Pomelo.EntityFrameworkCore.MySql,并选对应的版本。比如.NET 5,就选5.0.0, 如果是最新.NET6,就选6.0..6+的版本。 2.找到项目 MyCompanyName.AbpZeroTemplate.EntityFrameworkCore,删除 Migrations文件夹下面除SEED之外的所有CS文件 3.修改 MyCompanyName.AbpZeroTemplate.Web.Core和MyCompanyName.AbpZeroTemplate.Web.Mvc下面的appsettings.json中...
k8s之PersistentVolume&PersistentVolumeClaim
kind:PersistentVolume apiVersion: v1 metadata: name: mysql-pv spec: capacity: storage:1Gi hostPath: path:/home/work/share/mysql type:'' accessModes: -ReadWriteOnce claimRef: kind:PersistentVolumeClaim namespace:default name: mysql-pvc persistentVolumeReclaimPolicy:Retain volumeMode:Filesystem kind: PersistentVolumeClaim apiVersion: v1 metadata: name: mysql-pvc namespace: default labels: app: mysql-pvc spec: accessM...
k8s之ReplicationController
kind: ReplicationController apiVersion: v1 metadata: name: mysql-rc namespace: default uid: 946f2c6a-f7ac-4412-b3c9-3741fe668717 resourceVersion: '1299573' generation: 3 creationTimestamp: '2021-05-17T09:16:19Z' labels: name: mysql-rc spec: replicas: 1 selector: name: mysql-pod template: metadata: labels: name: mysql-pod spec: volumes: - name: mysql-storage persistentVolumeClaim: claimN...
数据库先写日志还是先写数据?
每一个SQL Server的数据库都会按照其修改数据(insert,update,delete)的顺序将对应的日志记录到日志文件.SQL Server使用了Write-Ahead logging技术来保证了事务日志的原子性和持久性.而这项技术不仅仅保证了ACID中的原子性(A)和持久性(D),还大大减少了IO操作,把对数据的修改提交到磁盘的工作交给lazy-writer和checkpoint. 预写式日志(Write-Ahead Logging (WAL)) SQL Server使用了WAL来确保了事务的原子性和持久性.实际上,不光是SQL Server,基本上主流的关系数据库包括oracle,mysql,db2都使用了WAL技术. WAL的...
mysql update触发器
DELIMITER $$ CREATE /*[DEFINER = { user | CURRENT_USER }]*/ TRIGGER `test`.`trig_update` AFTER UPDATE ON `test`.`shunqing_content_open` FOR EACH ROW BEGIN DECLARE num INT; IF(old.title<> new.title OR old.content<>new.content) THEN SELECT COUNT(0) INTO num FROM shunqing_content_tmp WHERE tid=new.tid; IF(num = 0) THEN INSERT INTO shunqing_content_tmp(tid,TYPE,createtime)VALUES(new.tid,2,N...
MySQL使用Union创建视图报错
mysql> select * from test_main; +----+-------+ | id | value | +----+-------+ | 1 | ONE | | 2 | TWO | | 3 | THREE | +----+-------+ 3 rows in set (0.00 sec) mysql> create table test_main2 select * from test_main; Query OK, 3 rows affected (0.04 sec) Records: 3 Duplicates: 0 Warnings: 0 -- 创建视图, sql 语句加了括号, 报错。 CREATE VIEW view_test_main AS ( SELECT * FROM test_main UNION ALL SELECT * FROM test_main2 ); ERROR 1064 (42000): You have an e...