MySQL 选错索引的原因?

MySQL 中,可以为某张表指定多个索引,但在语句具体执行时,选用哪个索引是由 MySQL 中执行器确定的。那么执行器选择索引的原则是什么,以及会不会出现选错索引的情况呢?先看这样一个例子:创建表 Y,设置两个普通索引, 创建一个存储过程用于插入数据。MySQL: 5.7.27, 隔离级别: RRCREATE TABLE `Y` (  `id` int(11) NOT NULL AUTO_INCREMENT 阅读全部

wsl常用命令

WSL-Ubuntu18.04 LTS 重启方法以管理员权限运行cmd,//停止net stop LxssManager//启动net start LxssManager其它待补充 阅读全部

WSL不安装到C盘的方法,修改Ubuntu默认安装目录到其他盘,无需第三方工具

此方法比较适合新安装的wsl迁移。如果已经在使用状态中的wsl,可以参考本文后面使用第三方工具 LxRunOffline 的迁移方法。

小提示:如果安装时出现:WSL-参考的对象类型不支持尝试的操作,可使用以下方法解决:

netsh winsock reset

方式一:使用wsl命令迁移

1.查看WSL分发版本

在Windows PowerShell中输入如下命令:

wsl -l --all -v

2.导出分发版为tar文件到d盘

wsl --unregister Ubuntu-20.04

4.重新导入并安装WSL在d:\wsl-ubuntu20.04

ubuntu2004 config ---user Username

5.设置默认登陆用户为安装时用户名

ubuntu2004 config --default-user Username

6.删除tar文件(可选)

del d:\wsl-ubuntu20.04.tar

7.结束

经过以上操作后,就将WSL的默认安装目录迁移到D:\wsl-ubuntu20.04目录下了。此目录即为WSL的跟文件系统。整个过程无需第三方工具。


阅读全部

mysql全文索引字段加权重的实现方法

mysql建立全文索引时,可以实现模糊匹配:select MATCH (index) AGAINST ('key1 key2 key3') as score但如果要对多字段搜索,则没有直接对不同字段设置不同权重的,比如有 title 和 content 的字段,如果想让 title 的权重比 content 要高,可以通过两条索引加权后排序来完成,参考以下的代码:  drop table if exi 阅读全部

ubuntu旧版本如12.04在apt-get update时出现Err 404 Not Found的解决办法

  每个Ubuntu版本都有生命结束周期(EOL)时间(如当前 ubuntu 12.04 就不再维护);常规的Ubuntu发行版提供18个月的支持,而LTS(长期支持)版本则长达3年(服务器版本)和5年(桌面版本)。当某个Ubuntu版本达到生命结束周期时,其仓库就不能再访问了,你也不能再从Canonical获取任何维护更新和安全补丁。  如果你所使用的Ubuntu系统已经被结束生命周期,你就会从apt-get或aptitude得到以下404错误,因为它的仓库已经被遗弃了:  使用ap 阅读全部

python操作phantomjs使用详解

  PhantomJS俗称为:无界面的浏览器  Selenium: 可以根据我们的指令,让浏览器自动加载页面,获取需要的数据,甚至页面截屏,或者判断网站上某些动作是否发生。Selenium 自己不带浏览器,不支持浏览器的功能,它需要与第三方浏览器结合在一起才能使用。但是我们有时候需要让它内嵌在代码中运行,所以我们可以用一个叫 PhantomJS 的工具代替真实的浏览器。  PhantomJS是一个基于webkit的JavaScript API。它使用QtWebKit 阅读全部

《骂人的艺术》—— 梁实秋

  古今中外没有一个不骂人的人。骂人就是有道德观念的意思,因为在骂人的时候,至少在骂人者自己总觉得那人有该骂的地方。何者该骂,何者不该骂,这个抉择的标准,是极道德的。所以根本不骂人,大可不必。骂人是一种发泄感情的方法,尤其是那一种怨怒的感情。想骂人的时候而不骂,时常在身体上弄出毛病,所以想骂人时,骂骂何妨。   但是,骂人是一种高深的学问,不是人人都可以随便试的。有因为骂人挨嘴巴的,有因为骂人吃官司的,有因为骂人反被人骂的,这都是不会骂人的原故。今以研究所得,公诸同好,或可为骂人时之一 阅读全部

5分钟,用OpenResty做一个隧道代理

什么是隧道代理?我们来看下面这张截图: 所谓隧道代理,就是一个能帮你自动更换代理 IP 的代理服务。在你的代码里面,你只需要把一个入口代理地址写死,然后正常发起请求,而目标服务器接收到的请求,每一次都是不同的代理地址。 在某代理网站上,隧道代理50并发每秒的价格是4000元/月: 而常规的,先请求接口拿到一批代理 阅读全部

转:正则表达式的先行断言(lookahead)和后行断言(lookbehind) 例如:(?=pattern) (?!pattern)等

  正则表达式的先行断言和后行断言一共有4种形式:(?=pattern) 零宽正向先行断言(zero-width positive lookahead assertion)(?!pattern) 零宽负向先行断言(zero-width negative lookahead assertion)(?<=pattern) 零宽正向后行断言(zero-width positive lookbehind assertion)(?<!pattern) 零宽负向后行断言(zero-width n 阅读全部

PHP正则\p支持和Unicode字符集

  一、用法  \p{xx}  一个有属性 xx 的字符  \P{xx} 一个没有属性 xx 的字符  \X  一个扩展的 Unicode 字符  Unicode 字符集在具体文字中定义。使用文字名可以匹配这些字符集中的一个字符。例如:  \p{Greek}  \P{Han}  二、支持的字符集支持的文字ArabicArmenianAvestanBalineseBamumBatakBengaliBopomofoBrahmiBrailleBugineseBuhidCanadia 阅读全部

五款中文分词工具在线PK: Jieba, SnowNLP, PkuSeg, THULAC, HanLP

最近玩公众号会话停不下来:玩转腾讯词向量:Game of Words(词语的加减游戏),准备把NLP相关的模块搬到线上,准确的说,搬到AINLP公众号后台对话,所以,趁着劳动节假期,给AINLP公众号后台聊天机器人添加了一项新技能:中文分词线上PK,例如在AINLP公众号后台对话输入:中文分词 我爱自然语言处理,就可以得到五款分词工具的分词结果:现在的开源中文分词工具或者模块已经很丰富了,并且很多都有一些在封闭测试集上的效果对比数据,不过这仅仅只能展现这些分词工具在这个封闭测试集上的效果,并不能 阅读全部

Linux守护进程脚本,检测某进程是否存在

守护进程脚本,执行此脚本后,检测是否存在某进程,如果存在则不运行,避免重复运行#!/bin/sh count=`ps -ef | grep xxx_app | grep -v "grep" | grep -v "task.sh" | wc -l` if [ 0 -eq&nbs 阅读全部

php数组排序

主要区别有:有些函数基于 array 的键来排序, 而其他的基于值来排序的:$array['key'] = 'value';。排序之后键和值之间的关联关系是否能够保持, 是指排序之后数组的键可能 会被重置为数字型的(0,1,2 ...)。排序的顺序有:字母表顺序, 由低到高(升序), 由高到低(降序),数字排序,自然排序,随机顺序或者用户自定义排序。注意:下列的所有排序函数都是直接作用于数组本身, 而不是返回一个新的有序的数组。以下函数对于数组中相等的元素,它们在 阅读全部

elasticsearch超省存储空间的配置

最近在研究elasticsearch 5.x版本的新特性的时候,偶尔翻到一篇es的测试文章,对于mapping的配置直接干掉了_all和_source选项。对于_all选项的关闭我倒是可以理解,但是如果关掉_source选项的话,那返回数据就是一堆空的字典了。所以看到这篇文章,我的第一感觉是: 卧草,还有这样的骚操作?!这是完全是把es当索引用了啊。但是对于Hbase和mongodb存储的数据,这样搞也没什么坏处。通过索引拿到rowkey/_id, 然后直接从Hbase/mongodb里取数据。 阅读全部

xunsearch同步索引技术

https://blog.csdn.net/wzm112/article/details/39001431 阅读全部

全文检索:sphinx_elasticsearch_xunsearch选型分析

全文检索:sphinx_elasticsearch_xunsearch选型分析开发语言:Sphinx和Xunsearch是基于C/C++开发、Elasticsearch基于java开发MySQL数据导入及索引生成:Sphinx > Elasticsearch > XunsearchSphinx跟RDBMS(特别是MYSQL)绑定的特别紧密,在导入MySQL数据生成索引时,从易用性、可靠性、速度上来看,Sphinx优于ElasticSearch。Sphinx真的很快。ElasticSe 阅读全部

谷歌翻译接口研究

前面介绍了有道翻译接口 破解,接下来试一试谷歌翻译(Github项目地址)同样,查看首页元素,如下:得到 Request URL 和 Request Method。然后查看 From Data,可以看到一系列的参数,不过我们重点只需要关注 tk。按照推断,tk 参数值也是一种签名,通过某种方法得到。我们从众多的 js 代码中可以发现一些端倪。通过格式化 js 代码,得到实际上,已经有大佬将计算 tk 代码破解了,这里我就直接放上来:function token(a) {&nb 阅读全部

mysql优化–explain分析sql语句执行效率

Explain命令在解决数据库性能上是第一推荐使用命令,大部分的性能问题可以通过此命令来简单的解决,Explain可以用来查看SQL语句的执行效 果,可以帮助选择更好的索引和优化查询语句,写出更好的优化语句。Explain语法:explain select … from … [where …]例如:explain select * from news;输出:+----+-------------+-------+-------+-------------------+---------+---- 阅读全部

Alibaba PC Safe Service占用CPU过高,用第三方工具软件Autoruns删除AlibabaProtect以减少CPU占用的方法

Alibaba PC Safe Service 是阿里相关软件的基础保护程序,描述为 阿里巴巴反钓鱼安全服务。会在安装阿里软件,如旺旺、优酷客户端等软件时一起安装上。但平时不用旺旺的时候,这个程序也在后台运行,并且CPU非常高。对于只是偶尔用一下的人,这样太影响。常规方法如 sc delete AlibabaProtect 无法卸载或停止服务,因为这不只是一个服务,还是一个驱动级加载。特别提醒:如果你是淘宝商家,需要挂机旺旺,请不要删除此服务。要卸载的服务名称:Alibaba PC S 阅读全部

转载:MySQL Performance-Schema(三) 实践篇

前一篇文章我们分析了Performance-Schema中每个表的用途,以及主要字段的含义,比较侧重于理论的介绍。这篇文章我主要从DBA的角度出发,详细介绍如何通过Performance-Schema得到DBA关心的数据,比如哪个SQL执行次数最多,哪个表访问最频繁,哪个锁最热等信息。通过充分利用Performance-Schema表的数据,让DBA更了解DB的运行状态,也更有助于排查定位问题。本文主要从两方面展开讨论,第一方面是统计信息维度,包括SQL维度,对象维度和等待事件维度三小点;第二方 阅读全部