干电池的那些事

今天我们来聊聊干(gān,一声)电池的事。干电池为什么叫“干”电池呢?电池难道还能是湿的吗?还真是这样,早期的电池确实是湿的。伏特早期发明电池的时候就是两块金属板泡在盐水里。这个盐水被称作电解液,后来几十年里电解液的化学成分一直在变,但不变的是一直是“湿”的。一直持续到1887年,一个叫赫勒森的英国人往电解液里掺东西把它变成糊状物,虽然还是黏糊糊的

CentOS下为MySQL开多个实例

1 首先停止mysql的开机自启动chkconfig mysql off2 创建新的数据库实例目录mkdir /data/mysql3 检查当前的mysql的socket和datadirshow variables like 'socket'; show variables like 'datadir';记下两个结果4 新建或修改/etc/my.cnf,内容为:[mysqld_multi] mysqld = /usr/bin/mysqld_safe mysqladmin = /usr/bin/mysqladmin user = mysql log = /var/lib/mysql/multi.log [mysqld1] socket = 这里写3步查到的socket datadir = 这里写3步查到的datadir [mysqld

内网用iso镜像做yum源

在内网服务器上无法使用yum安装软件造成很多不方便,如果有安装系统的iso同样可以用它作为yum的源。下面就是操作记录:1 上传iso到服务器上,比如放在这里:/root/CentOS-6.7-x86_64-bin-DVD1.iso2 新建一个目录:mkdir /media/CentOS3 将iso挂载到这个目录上mount -o loop /root/CentOS-6.7-x86_64-bin-DVD1.iso /media/CentOS4 修改yum的本地配置文件:vi /etc/yum.repos.d/CentOS-Media.repo #确保下面这一句存在 baseurl=file:///media/

CentOS挂载U盘

一台centos服务器需要临时接入一个U盘,以下为具体操作步骤:1 首先确认系统已经识别出了U盘:fdisk -l | grep -E "/dev/[a-z]{3}:"将列出当前系统所有的磁盘,可以根据磁盘容量确定。如果主磁盘是/dev/sda,那U盘通常是/dev/sdb。2 然后可以看出USB设备是FAT32格式的:fdisk -l | grep -E "/dev/sdb[0-9]"3 挂载U盘mkdir /mnt/usb mount -t vfat /dev/sdb1 /mnt/usb如果文件名出现乱码,尝试以下两个命令:mo

MySQL数据表损坏提示“is marked as crashed”的修复

一台内部服务器的磁盘满了,清理后发现数据库被破坏,提示:ERROR 144(HY000): Table './test/baike' is marked as crashed and last(automatic?)repair failed尝试快速修复:myisamchk -r -q test/baike #这里的test/baike代表数据库所在目录和数据库名,不用写后面的frm、MYD、MYI结果修复失败:- check record delete-chain - recovering(with sort)MyISAM-table 'est/baike' Data records: 1077138 - Fixing index 1 Found block that points outside

centos开机自动启用eth0网卡

centos默认开机不启用eth0网卡,需要手动执行以下命令才可以联网:ifup eth0设置开机自动启用网卡的方法是:vi /etc/sysconfig/network-scripts/ifcfg-eth0找到ONBOOT=yes改成ONBOOT=no保存后重启系统,顺利的话网卡已经自动连接了,真搞不懂centos为什么要这么脑残!

centos挂载新硬盘

有一台虚拟机,在执行一个任务的时候磁盘空间不够用了,增加了一块100GB的虚拟磁盘,挂载的操作过程记录如下:1 列出所有的硬盘fdisk -l | grep -P "Disk /dev/[a-z]{0,3}:" Disk /dev/sda: 10.8 GB, 10816946176 bytes Disk /dev/sdb: 107.4 GB, 107374182400 bytes从这里可以看到要挂载的硬盘是/dev/sdb2 分区<-----代表按下回车键fdisk /dev/sdb Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel Building

不是权限问题引起的nginx 403错误

一台服务器遇到一个故障:访问静态文件的时候nginx报403错误。一开始以为是没有设置网站默认首页,检查发现首页设置是正常的index index.html index.htm index.php;故意请求一个存在的test.html,也同样报403错误又怀疑是站点目录写错了,但如果故意请求一个不存在的文件会报404错误,只对存在的文件才报403,这又排除了站点目录错误。又怀疑是目录的权限不对,临时把nginx用户的shell设置为bash

centos6.7下使PHP支持Memcache

某一个服务需要大量的查询,为了提高性能打算用memcached实现。Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载。它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高动态、数据库驱动网站的速度。Memcached基于一个存储键/值对的hashmap。其守护进程(daemon )是用C写的,但是客户端可以用任何语言来编写,我这里用的是PHP。下面是具体

Linux下rm删除文件(文件夹)失败的解决

Linux下删除文件的命令是rm,使用起来非常简单rm test.txt像这样就删除了test.txt这个文件。说起来简单,实际在删除文件夹(文件)的操作中常常会遇到很多小问题,下面我逐一给出解决方案:问题1:删除文件夹时失败,错误提示:mkdir test rm test rm: cannot remove `test': Is a directory上面先新建了一个文件夹test,再尝试删除它,结果遇到报错。解决:rm命令的作用是删除文件,真正删除文件

centos6.7下使PHP支持MongoDB

现在有一台服务器上运行着PHP5.4,因为系统架构的原因导致产生了大量的小文件缓存,造成磁盘读写慢,整个系统性能低,负载居高不下。为了解决这个问题决定用MongoDB代替文件缓存。MongoDB是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。他支持的数据结构非常松散,是类似json的bson格式,因此可以存储比较复杂的数

坎坷学车记

整理资料时发现学车时记的笔记,今天读起来真是感慨万千。报名篇当初我和我媳妇一起报名驾校,准备交钱时我被告知,外地户口没有暂住证不能报名。没办法只好让我媳妇先报名,我赶紧办暂住证。去到派出所被告知,现在没有证,再等一个月,再去问问,还是没有证,说国家快出政策取消暂住证了,让我回家等着吧。等啊等也不见取消暂住证,再去问终于有证了,但我的居住地

微信公众平台API的那些坑

这几天在开发一个微信公众平台的插件,虽然没有什么技术含量但是就是坑多,把遇到的坑记录一下:零 写个demo在哪儿测试呢?开始只能在WEB界面的在线调试工具(http://mp.weixin.qq.com/debug)中,人工填写参数来测试,没法真正的联调,而且用的接口许多不提供。后来在朋友的指点下找到了微信公众平台接口测试帐号(http://mp.weixin.qq.com/debug/cgi-bin/sandbox?t=sandbox/login)这里可以申请到有效

no crontab for root

执行crontab -l命令,如果输出“no crontab for root”就说明此用户尚无crontab。无crontab与crontab为空还不一样,如果crontab为空的话,crontab -l命令就什么也不输出。其实对用户来说,这二者是没有差别的,要把体验统一起来最简单的办法就是手动创建一个crontab:crontab -e但这样会打开一个编辑器,无法自动化。与其他的Linux程序一样,crontab的内容是保存在文本文件中,直接创建空文件也可以,

用shell为MySQL新版重置密码

旧版的MySQL安装成功后,root账号是没有密码的,方便但是也带来不安全。从5.6.8版开始(现在的最新版是5.6.20),通过RPM方式安装的MySQL在安装过程中会自动设置一个随机的临时密码。安装过程结束后,通过账号下一个临时文件$HOME/.mysql_secret找到密码。它的内容是这样的:# The random password set for the root user at xxxxxxxxxxxxxxxx: eQLxneugXwlucXLk这个密码是临时密码,用它登录后只能做一件事:修改

wget的“英国中部时间”简单粗暴解决办法

使用Linux中文环境下使用wget的都有一个困扰:下载一个稍微大一点的文件就会不断刷新滚屏重复显示进度条,最终在屏幕上显示了一个大梯形。如果关闭进度显示的话,又不知道当前下载到什么程度了,也不方便。这个问题的产生是翻译人员在翻译eta这个词的时候出现了问题,eta这个词是“Estimated Time of Arrival”的缩写,意思是:XX时间后到达。但是翻译人员不知道在想什么,给翻成了

吐槽linux操作系统

1 唯一没有可用的QQ客户端的操作系统(腾讯官方的过旧已不能登录),我现在的做法是用鞋带绑了一个android手机开手机QQ,权当这是外设,只是打字很不方便,我想再给这个外设加个外设(蓝牙键盘)。请不要提webqq,那玩意如果当时没看到消息的话,或者不小心关了消息窗口,哪怕浏览器窗口还在,再打开就看不到刚才的聊天记录了。此外,wine里面也没有可用的QQ。2 联想某系列笔记

Ubuntu升级后php-fpm的sock模式失效

昨天,ubuntu弹出一个框说有一些安全更新,我就让它更新了,但很快我就发现,我无法工作了,因为开发环境的php都无法解析了,一律报502错误。升级完成后,重启系统,故障依旧。我上网搜索了一下相关的资料:发现以前有一个人的php-fpm是port模式的,也是升级ubuntu后port模式失效,改成sock模式恢复正常。而我用的本来就是sock模式,那怎么办呢?不会是让我换回port模式吧,但这太无

用平板电脑(或手机)看CCTV5的NBA直播

CCTV5有NBA直播时,用平板电脑安装CCTV的客户端CBOX应用打开CCTV5,总是会提示:“版权限制,请选择其它频道观看!”。我分析他这个限制应该不会是不提供片源,而是简单的在客户端提示。研究了一下发现解决办法很简单:提前5分钟打开应用开始播放,一直开着不要关,这样就可以一直看。如果网络信号不佳播放中途中断的话就麻烦了,再次打开就会提示那个“版权限制,请选择其它

shell脚本中使用scp无需输入密码

在脚本中需要从远程服务器拖一些备份数据下来,scp命令可以完成这个工作,但是每次需要输入密码,无法自动化。下面这个办法可以生成一个密钥上传到服务器,这样就不用每次输入密码了。因为涉及两台电脑,为避免混乱,先给他们取个名字,A和B。我们希望在电脑A主动连接电脑B的时候不需要输入密码。在A上执行如下命令:ssh-keygen然后一路回车,顺利的话会生成一个密钥文件,
扫码关注我的公众号