October 25, 2016
git提示“Pull is not possible because you have unmerged files.”的解决办法(转)
"在git pull的过程中,如果有冲突,那么除了冲突的文件之外,其它的文件都会做为staged区的文件保存起来。\n重现:\n$ git pull\nA Applications/Commerce/BookingAnalysis.java A Applications/Commerce/ClickSummaryFormatter.java M Applications/CommerceForecasting/forecast/Forecast.java A Applications/CommerceForecasting/forecast/ForecastCurveProviderCategory.java M Applications/CommerceForecasting/forecast/ForecastProvider.java M Applications/CommerceForecasting/forecast/InputPropertyItem.java ……\nA …"
October 8, 2016
一张图让你彻底理解聚簇索引与普通索引的区别[经典]
"[][1]\n下面分析下索引和锁的关系。 1)delete from msg where id=2;\n由于id是主键,因此直接锁住整行记录即可。 图5 2)delete from msg where token=’ cvs’;\n由于token是二级索引,因此首先锁住二级索引(两行),接着会锁住相应主键所对应的记录; 图6 3)delete from msg where message=订单号是多少’;\nmessage没有索引,所以走的是全表扫描过滤。这时表上的各个记录都将添加上X锁。 图7\n强烈推荐阅读: https://yq.aliyun.com/articles/5533"
October 7, 2016
mysql配置变量介绍
"key_buffer_size\n设置这个变量给键缓冲区(或者说键缓存)分配指定大小的空间。但是操作系统只有在实际用到这些空间的时候才会进行分配。例如,将键缓冲区大小设置为1GB,并不意味着服务器就会真正地给它分配1GB空间。\n对一个已有的缓存设置非零值将会冲洗缓存,从技术上来说,这是一个在线操作,但是它会阻止所有访问该缓存的动作,直到缓存冲洗完成。\ntable_cache_size\n设置这个变量是不会立即生效,要等到下一个线程打开表的时候才会生效。当它生效的时候,MYSQL会检查变量的值。如果值大于缓存中表的数量,线程就可以把新打开的表插入到缓存中。如果值小于缓存中表的数量,MySQL就会从缓存中删除掉没有使用的表。\nthread_cache_size\n设置这个变量不会立即生效,生效被延时到了下一次线程关闭的时候。在那时,MySQL检查缓存中是否有空间存储线程。如果是,它会把线程缓存起来,供另外一个连接使用。如果不是,它会直接结束掉线程。在这种情况下,缓存中线程的数量,以及线程缓存使用的内存数量不会立即就下降。只有当新连接为了使用线程把它从缓存中移走的时候才会看到下降。(MySQL只有 …"
September 18, 2016
如何用十条命令在一分钟内检查Linux服务器性能
"如果你的Linux服务器突然负载暴增,报警短信快发爆你的手机,如何在最短时间内找出Linux性能问题所在?来看Netflix性能工程团队的这篇博文,看它们通过十条命令在一分钟内对机器性能问题进行诊断。概述\n通过执行以下命令,可以在1分钟内对系统资源使用情况有个大致的了解。\nuptime\ndmesg | tail\nvmstat 1\nmpstat -P ALL 1\npidstat 1\niostat -xz 1\nfree -m\nsar -n DEV 1\nsar -n TCP,ETCP 1\ntop\ngtop\npstree 查看进程树之间派生的关系\ntrap 捕捉进行接收到的信号标识,如 SIGKILL/SIGTERM\nGlances\n其中一些命令需要安装sysstat包,有一些由procps包提供。这些命令的输出,有助于快速定位性能瓶颈,检查出所有资源(CPU、内存、磁盘IO等)的利用率(utilization)、饱和度(saturation)和错误(error)度量,也就是所谓的USE方法。\n下面我们来逐一介绍下这些命令,有关这些命令更多的参数和说明,请参照命令的手册。\nuptime\n$ …"
September 11, 2016
Visual Studio Code之常备快捷键
"推荐:Visual Studio Code 添加设置代码段(snippet){#cb_post_title_url.postTitle2}\n官方快捷键大全: https://code.visualstudio.com/docs/customization/keybindings\nVisual Studio Code是个牛逼的编辑器,启动非常快,完全可以用来代替其他文本文件编辑工具。又可以用来做开发,支持各种语言,相比其他IDE,轻量级完全可配置还集成Git感觉非常的适合前端开发。 所以我仔细研究了一下文档未来可能会作为主力工具使用。\n主命令框 最重要的功能就是F1或Ctrl+Shift+P打开的命令面板了,在这个命令框里可以执行VSCode的任何一条命令,甚至关闭这个编辑器。 按一下Backspace会进入到Ctrl+P模式里 在Ctrl+P下输入\u0026gt;又可以回到Ctrl+Shift+P模式。 在Ctrl+P窗口下还可以\n直接输入文件名,跳转到文件 ? 列出当前可执行的动作 ! 显示Errors或Warnings,也可以`Ctrl+Shift+M : 跳转到行数,也可以Ctrl+G直 …"
August 30, 2016
让终端走代理的几种方法
"方法1 在终端中直接运行命令\nexport http_proxy=http://proxyAddress:port 这个办法的好处是简单直接,并且影响面很小(只对当前终端有效)。\n方法2 把代理服务器地址写入shell配置文件.bashrc或者.zshrc\n直接在.bashrc或者.zshrc添加下面内容\nexport http_proxy=\u0026#34;http://localhost:port\u0026#34; export https_proxy=\u0026#34;http://localhost:port\u0026#34; 以使用shadowsocks代理为例,ss的代理端口为1080,那么应该设置为\nexport http_proxy=\u0026#34;http://127.0.0.1:1080\u0026#34; export https_proxy=\u0026#34;http://127.0.0.1:1080\u0026#34; localhost就是一个域名,域名默认指向 127.0.0.1,两者是一样的。\n然后ESC后:wq保存文件,接着在终端中执行\nsource ~/.bashrc 或者退出当前终端再起一个终端。 这个办法的好处 …"
August 15, 2016
highcharts中对”另存为”进行汉化
"$(function () { var chart = new Highcharts.Chart({ chart: { renderTo: \u0026#39;container\u0026#39; }, lang{ printChart:\u0026#34;打印图表\u0026#34;, downloadJPEG: \u0026#34;下载JPEG 图片\u0026#34; downloadPDF: \u0026#34;下载PDF文档\u0026#34; downloadPNG: \u0026#34;下载PNG 图片\u0026#34; downloadSVG: \u0026#34;下载SVG 矢量图\u0026#34; exportButtonTitle: \u0026#34;导出图片\u0026#34; }, ..... }) }) "
August 13, 2016
windows下备份mysql数据库dos脚本
"@echo off \u0026amp; setlocal ENABLEEXTENSIONS :: ---------- 配置项 ---------- :: 备份放置的路径,加 set BACKUP_PATH=D:\\Backup :: 要备份的数据库名称,多个用空格分隔 set DATABASES=1688 abc ceshi :: MySQL 用户名 set USERNAME=root :: MySQL 密码 set PASSWORD=root :: MySQL Bin 目录,加 :: 如果可以直接使用 dump(安装时添加 MySQL Bin 目录到了环境变量),此处留空即可 set MYSQL=D:\\Progra~1\\phpStudy\\MySQL\\bin\\ :: WinRAR 自带命令行工具的可执行文件路径,长文件名注意用 Dos 长文件名书写方式 set WINRAR=D:\\Progra~1\\WinRAR\\Rar.exe :: ---------- 以下请勿修改 ---------- set YEAR=%date:~0,4% set MONTH=%date:~5,2% set …"
June 7, 2016
gitlab安装-设置1-修改仓库(repositories)的位置
"安装好gitlab后,要将仓库(repositories)放在一个大硬盘上,在ubuntu服务器上安装的默认位置为 /var/opt/gitlab/git-data/ 目录,需要修改仓库对应的目录\n操作步骤:\n1:新建新仓库目录\nmkdir -p /mnt/application/gitlab/git-data 2:修改配置文件 sudo vi /etc/gitlab/gitlab.rb 搜索:git_data_dir 修改成:git_data_dir “新目录” 如:\ngit_data_dir \u0026#34;/mnt/application/gitlab/git-data\u0026#34; 保存 3:重新生成gitlab\nsudo gitlab-ctl reconfigure 生成不报错,而且在新建仓库目录可以看到从下的目录,即修改成功。"