Mysql 索引长度以及区分度计算  

大部分人创建数据库的索引的时候,都是直接给某个字段添加索引,并未使用索引的长度。 事实上判断一个索引是否高效,主要通过索引的长度以及区分度来衡量。 比如我们有个字典包含下面几个单词 我们 我们的祖国 我 如果通过我来查询匹配到三个,通过我们来查询匹配到两个,通过我们的来查询只匹配到一个. 这边就包含了长度和区分度的应用,理论上索引长度越长,区分度越高,但是相应的占用空间也大,在实际应用中我们并不需要百分百匹配,所以我们需要在两个之间进行取舍,选择一个对两者都好的值。原则就是:索引长度小,精确度高

Posted:2018-10-26  By vilay

Nginx 日志切割  

Nginx 日志切割脚本 #!/bin/bash year=`date +%Y` month=`date +%m` day=`date +%d` logs_backup_path="/var/logs/nginx/$year$month" logs_path="/var/logs/" logs_access="store.access" logs_error="store.error" [ -d $logs_back

Posted:2018-10-24  By vilay

阿里云服务器发送Email邮件:Expected response code 220 but got code "", with message ""  

在阿里云Ecs上发送邮件功能,代码本地测试都ok,在生产环境报错 Connection could not be established with host 这是由于阿里的ecs服务器禁用了25端口,切换成465/994,就可以了。 后面产生了另外一个报错 Expected response code 220 but got code "", with message "" 正确的配置 'mailer' => [ 'class' => 'yii

Posted:2018-10-11  By vilay

Centos7 redis安装与使用  

第一步:安装依赖 yum install gcc-c++ yum install tcl 第二步:下载安装包,解压 wget http://download.redis.io/releases/redis-4.0.11.tar.gz tar -zxvf redis-4.0.11.tar.gz 第三步:安装 mv redis-4.0.11 /usr/local/redis cd /usr/local/redis make && make install make test mkdi

Posted:2018-10-10  By vilay

Mysql 修改innodb_buffer_pool_size  

批量插入数据的时候提示 SQLSTATE[HY000]: General error: 1206 The total number of locks exceeds the lock table size 解决方法,修改innodb_buffer_pool_size大小 vi /etc/my.cnf,在[mysqld]中新增 innodb_buffer_pool_size=10G 重启

Posted:2018-09-30  By vilay

PHP rtirm 函数使用问题  

对于rtrim函数之前的印象一直是去除右侧字符串,之前都是去除单个并没有受到影响,今天在处理一个字符串的时候 echo rtrim('1819232291343159','43159'); 结果显示: 18192322 与预期的完全不一样,预期应该是输出 18192322913 看了下官方文档,第二个参数 通过指定 character_mask,可以指定想要删除的字符列表。简单地列出你想要删除的全部字符。使用 .. 格式,可以指定一个范围。 原来是列表元素,不能当作整个字符串来看,应该看作4,3

Posted:2018-09-30  By vilay

Linux 查看开启了多少个php-fpm进程  

查看多少个进程在处理请求 netstat -anp | grep 'php-fpm'|grep -v 'LISTENING'|grep -v 'php-fpm.conf'|wc -l 查看开启了多少个进程 ps -ef | grep 'php-fpm'|grep -v 'master'|grep -v 'grep' |wc -l

Posted:2018-09-29  By vilay

Nginx+php-fpm 网站高并发性能优化笔记  

网站性能优化笔记学习 当前应用的主要性能瓶颈应该都在数据库上。这边主要纪录下web服务器相关的性能优化。 包含三个方面:nginx,php-fpm,系统内核 Nginx优化 # For more information on configuration, see: # * Official English Documentation: http://nginx.org/en/docs/ # * Official Russian Documentation: http://nginx.org/ru

Posted:2018-09-29  By vilay

Mysql 通过客户端命令行查看慢SQL语句  

前提是配置了MySQL的慢日志相关配置 使用mysql -u root -p命令连接之后查看慢sql select * from mysql.slow_log order by 1;

Posted:2018-09-29  By vilay

Centos7 使用free查看内存,cache/buff过高处理方法  

使用命令free -m查看内存的时候发现,cache/buff非常高,16g内存占了13g了,并且一直没有自动回收,只能手动清除了 示例: total used free shared buff/cache available Mem: 15885 753 1367 0 13763 13812 Swap: 0 0 0 清除方法: echo 1 > /proc/sys/vm/drop_caches echo 2 > /proc/sys/vm/drop_caches echo 3 &gt

Posted:2018-09-19  By vilay

Safari 浏览器提交表单,在a标签上绑定onclick 事件  

今天遇到个问题,在写一个表单提交的时候,按钮使用的是a标签,在a标签上绑定了事件 <a type="button" class="btn btn-caution" rel="_request" id="address_submit" style="cursor: pointer;" onclick="return submit()">确定</a> 在su

Posted:2018-09-08  By vilay

SVN 服务器迁移  

由于业务需要,需要迁移svn服务器,由一台服务器迁移到另一台。 首先备份仓库 svnadmin dump /var/svn/xxx > xxx.dump #全量备份 svnadmin dump /var/svn/xxx -r 1000:2000 > xxx.dump #增量备份,只保留2000到5000的版本 增量备份可以考虑增加一个参数 svnadmin dump /var/svn/xxx -r 1000:2000 --incremental > xxx.dump #--in

Posted:2018-09-03  By vilay

Mysql 启动失败,InnoDB: Error: tried to read 65536 bytes at offset 0 1872384.  

Mysql突然就连接不上了,重新启动也一直失败 查看了下日志 tail -100 /var/log/mariadb/mariadb.log 报错如下: 180903 16:11:37 InnoDB: The InnoDB memory heap is disabled 180903 16:11:37 InnoDB: Mutexes and rw_locks use GCC atomic builtins 180903 16:11:37 InnoDB: Compressed tables use

Posted:2018-09-03  By vilay

Centos 硬盘挂载丢失,Give root password for maintance  

Centos的服务器突然无法远程连接了,重启之后一直报错 Give root password for maintance 输入root密码发现挂载目录确实丢失,硬盘是挂载在/home目录下 首先,查看了下硬盘信息 df -lh 重新挂载 mount /dev/xdb /home 挂载失败,报错了一串数据,大概就算xfs什么什么的,文件系统损坏了 修复文件系统 xfs_repair /dev/xdb 报错 The filesystem has valuebale metadata changes

Posted:2018-09-03  By vilay

Centos 重新定位svn服务器地址  

由于svn服务器出现问题,更换svn服务器地址 svn switch --relocate old_repos_url new_repos_url 命令报错 svn: E195009: 版本库 “svn://xxx/repos” 的 uuid 是 “5671f38b-b0b9-4696-8400-b425f3ad50ed”,但是工作副本的是 “d59372ac-0a8b-4ba3-a050-20f53ce3f9f2” 解决办法:登录svn服务器,把uuid设置为客户端副本的uuid svnadm

Posted:2018-09-02  By vilay