这一年2019

又过去了一年,又经历了一个四季春夏秋冬。年初立的一些flag明年还可以接着用,越长大越孤单,回想小时候的快乐是那么简单,天真的以为这世界可以一直“玩”下去。有父母、有亲人、有朋友、有上课总批评你的老师,有村里随处游荡的狗,每次遇到脸上嬉戏的表情总是突然凝固,有儿时收集不到又羡慕的玩具,还有一天去小伙伴家里抢着玩的游戏机……童年总是很多可玩的,每次期末老师的评语都是“贪玩!”,任性的解释这是好奇心求知欲驱使“长大想要当科学家!”。

现在长大了,离开家父母就见的少了,我妈总抱怨我野了,不会想家,不会想父母。一起长大的小伙伴现在也各奔东西。以为离开学校,离开老师就是天堂,只能说 too young,too simple!回村子时间少了,总是跟你偶遇确认过眼神的那只狗也很少见了,它现在日子过得怎么样?有没有骨头啃?还认不认识我?有没有找到其他小狗伴,还是说单身狗状态……很多玩具现在都没有了,不会再去抢着用小霸王学习机来”学习“,不用偷着躲着进游戏室,网吧上网时长不够玩就买台电脑回家自己玩,再不行选择计算机专业,投身IT队伍。当时期待的玩着电脑吃着泡面喝完最后一口汤的愿望现在算实现了,跟随互联网浪潮,能见证IT行业这些年发展,对当初选择投身这个行业感到荣幸。在新的领域总是会被人嘲笑,但总是有一批批执着愿意为此努力的人,也许他们是一群怪人,看起来跟那些光鲜亮丽总是格格不入,他们只是”贪玩“,也是因为”贪玩“才真正改变着这个世界,因为”贪玩“找回儿时纯粹的快乐,继续保持好奇心求知欲,即使长大了不能当上科技家!

首先他们无视于你,而后是嘲笑你,接着是批斗你,再来就是你的胜利之日。——圣雄甘地

明天会怎样?像1999迈入千禧之年一样让人激动还是未知?就让2020去回答吧!

2020继续做一个普通人,继续做一个对社会有贡献的人,继续做一个被这个社会所需要的人。如果被这个世界感动,不要吝啬你的泪水!最后希望在2020平安健康,找到一个什么事都想跟她分享的人,认真的!

又是从2019写到2020,总是那么拖拉……明年见。

MySQL主从复制错误处理

最近服务器出现点异常,MySQL主数据库卡死导致业务受到影响,切换至从数据库后很快业务恢复正常。接着出现复制线程告警Slave_SQL_Running: No ,之前数据库服务器异常也出现过主从复制相同问题,记录下其中处理办法。

mysql> STOP SLAVE;

mysql> SET GLOBAL SQL_SLAVE_SKIP_COUNTER = 1;

mysql> START SLAVE;

思路就是停止复制,跳过当前错误点再启动复制。

mysql> show slave status\G;
Slave_SQL_Running: Yes
Slave_IO_Running: Yes

查看复制状态,两个都显示为Yes后正常。有时候多次跳过当前错误点后还是显示 Slave_SQL_Running: No ,那就需要考虑重建主从复制关系了。

MySQL数据库版本升级

生产环境数据库使用过程中出现过几次事故,查看日志因为版本缺陷引起,最近打算升级数据库版本,由于动到数据库的东西,升级失败影响会很大,先在测试环境做升级测试。

环境

系统:Red Hat Enterprise Linux Server release 6.5 (Santiago)

数据库:MySQL-5.7.14

由于下载的二进制压缩包方式安装,自己用的Ubuntu一直apt-get方式安装升级,一直没试过二进制压缩包版本升级,网上搜了一通升级步骤,小版本可以采取本地直接升级方式。

官网下载安装包mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz

继续阅读“MySQL数据库版本升级”

shadowsocks 3.0安装问题

最近系统版本从Ubuntu16.04升级到18.04,之前有了解到AES-256-GCM,网上搜索看shadowsocks的C版已经升级到3.0支持 AES-256-GCM ,python版还停留在2.X。

因为比较熟悉apt-get安装方式,一直这么安装。后来发现apt-get没怎么维护了?

改用pip3方式安装,python版也更新到3.0

1、安装pip

sudo apt-get install python3-pip

2、安装shadowsocks

pip3 install https://github.com/shadowsocks/shadowsocks/archive/master.zip

3、查看版本

gray@localhost:~$ ssserver --version
 Shadowsocks 3.0.0

4、编辑了配置文件后启动服务

gray@localhost:~$ sudo ssserver -c /etc/shadowsocks.json -d start
 sudo: ssserver: command not found

这里就提示命令没找到。明明已经安装成功为什么加了sudo就提示命令找不到?查看文件路径

gray@localhost:~$ whereis ssserver
 ssserver: /home/gray/.local/bin/ssserver

被安装到在了个人文件目录下面,不是全局环境,所以加了sudo不能找到,到时候要随系统自动启动也不方便。开始以为是版本问题,发现问题在第二步没加sudo直接安装了,加上sudo重新安装测试

sudo pip3 install https://github.com/shadowsocks/shadowsocks/archive/master.zip

查看安装路径

gray@localhost:~$ sudo ssserver --version
 Shadowsocks 3.0.0
 gray@localhost:~$ whereis ssserver
 ssserver: /usr/local/bin/ssserver

已经安装到/usr目录下面,重新启动就正常了。

这一年2018

不忍相信现在已经是2018最后一天了,还想着年初给自己2018立的目标到头来还是处在停摆状态。想了自己这一年都干了什么,工作?好像除了工作也没干什么,又好像也没干出什么工作…最后还是得仔细回想一下!
2018发生了很多事,房子是用来住的、P2P爆雷、世界杯、假疫苗事件、中美贸易战、美国中期选举、中兴事件、华为事件、改革开放40年…回想这些热点话题总是历历在目,而我在加班!这一年买了新手机,玩手机看新闻的时间少了,驾校交了学费科目一过了就没时间,总是在加班又没干出什么成绩,朋友圈没扩展该单身还是单身。
一切还是那样却又回不去原来那样,毕业那年工资不高,房价还没那么贵,房租还算可以,除了有时间其他一无所有,进入社会一眼迷茫,几个人合租一套房子是再正常不过了,也许是同学,也许是朋友,还有是一个陌生人,一个房间、一根网线、一台电脑、一部手机,当然还有一直陪伴我的吉他和花。下班或周末买菜做饭也成了乐趣,再叫上几个朋友,虽然厨艺不好也很满足。技术不精,听到喜欢的曲子抱起吉他取悦自己…那是一段穷得像傻逼又很简单快乐的时光
“春天的花开秋天的风以及冬天的落阳
  忧郁的青春年少的我曾经无知的这么想
  风车在四季轮回的歌里它天天的流转
  风花雪月的诗句里我在年年的成长
  流水它带走光阴的故事改变了一个人
  就在那多愁善感而初次等待的青春”
过去的这些年,我并不需要太多的东西,简单的快乐已很满足,生活还有很多迷茫,身边遇到过很多东西想要改变我,如果我们再次相遇,不用担心我还是原来那个我。
2018怀着激情为这社会做贡献,把这份激情也延续到2019年吧。我没那么好,也没那么差,2019见!

使用微博图床,七牛测试域名过期之后图片下载保存办法

工作关系很长时间没有管理博客,突然就到了一年末尾了……之前收到过七牛发来的邮件通知,测试域名之类没关注。最近更新服务器打开博客一看挂七牛的外链都失效了,上七牛官网一看需要绑定域名后链接才可以继续使用,绑定的域名备案!!!于是考虑放弃七牛,还好存上面图片也不是很多。

接下来是寻找图片存储办法,方案想到两种:

  1. 图片都上传到服务器本地
  2. 寻找新图片存储服务

自己的考虑需要如下:

  1. 最好不放在本地主机。考虑后期网站备份、机房迁移会快速很多
  2. 主机在海外对国内访问延迟、丢包率较高
  3. 最好能提供CDN,不影响网页打开加载速度
  4. 外链长久稳定使用

现在主机服务器对方案一无论存储空间还是流量使用都是没问题的,只要服务器不挂图片都一直显示,主要问题在后期网站备份、机房迁移速度有影响。

目标转移到方案二——寻找新图片存储服务。网上搜索了一下看到很多推荐方案,其中微博图床、GitHub图床、sm.ms图床看着都不错能满足我目前需求,最后选定先试用微博图床。 继续阅读“使用微博图床,七牛测试域名过期之后图片下载保存办法”

更换Google Cloud Platform(GCP)VM实例外部IP

Google送福利赠送一年期300美金Google Cloud Platform优惠使用,为了响应号召薅社会主义的羊毛在上面建了VM虚拟机服务,公网独立IP,亚洲机房延迟低,速度快。有时也会遇到外网IP不能用的情况,这时可以考虑不删除实例更换IP。

登陆到Google Cloud Platform,https://cloud.google.com/

点击“转至控制台”,选择菜单——Compute Engine——VM实例 

看到在运行的实例状态

继续阅读“更换Google Cloud Platform(GCP)VM实例外部IP”

CentOS6下安装Java+Tomcat优化并自启动

CentOS作为服务器系统,稳定的状态成为良好的口碑。现在模拟服务器环境安装配置Java、Tomcat并对Tomcat做优化自启动。

系统:CentOS 6.9
Java:jdk-8u121-linux-i586.rpm
Tomcat:apache-tomcat-8.5.13.tar.gz

安装Java

#查看系统自带的Java并对应删除

[root@localhost ~]# rpm -qa | grep java
java_cup-0.10k-5.el6.i686
tzdata-java-2017b-1.el6.noarch
java-1.5.0-gcj-1.5.0.0-29.1.el6.i686
[root@localhost ~]# rpm -e --nodeps java-1.5.0-gcj-1.5.0.0-29.1.el6.i686

#下载好JDK文件,查看rpm包详细信息

[root@localhost 下载]# rpm -qip jdk-8u121-linux-i586.rpm 
Name        : jdk1.8.0_121                 Relocations: /usr/java 
Version     : 1.8.0_121                         Vendor: Oracle Corporation
Release     : fcs                           Build Date: 2016年12月13日 星期二 08时28分49秒
Install Date: (not installed)               Build Host: sca00boj.us.oracle.com
Group       : Development/Tools             Source RPM: jdk1.8.0_121-1.8.0_121-fcs.src.rpm
Size        : 279013566                        License: http://java.com/license
Signature   : (none)
Packager    : Java Software <jre-comments@java.sun.com>
URL         : URL_REF
Summary     : Java Platform Standard Edition Development Kit
Description :
The Java Platform Standard Edition Development Kit (JDK) includes both
the runtime environment (Java virtual machine, the Java platform classes
and supporting files) and development tools (compilers, debuggers,
tool libraries and other tools).

The JDK is a development environment for building applications, applets
and components that can be deployed with the Java Platform Standard
Edition Runtime Environment.

#看到默认安装目录是Relocations: /usr/java
继续阅读“CentOS6下安装Java+Tomcat优化并自启动”

抓到VirtualBox一个bug

今天日常更新软件时发现VirtualBox有更新,没多想就都更新了,版本号为:VirtualBox5.1.24r117012。更新完成后正常启动虚拟机,这台虚拟机分给了同事远程使用,按照惯例进到虚拟机把扩展文件也更新了,突然问题来了……点了几下死机了,再查看虚拟机状态已经没有在运行!这就悲剧了,难道是我打开姿势不对?又仔细检查一遍,没发现有什么不对。作为一个认真执着的人:D,再启动一次看看,重复多次还是同样结果,我在怀疑是不是机子过热或者硬件出了问题,关机让它休息一段时间开机再试,结果还是一样。我把注意力又转移到系统平台上,我虚拟机是在Linux系统下运行,试一下Windows平台是否正常,Windows系统下启动VirtualBox,找了其他电脑远程登录还是死机了!这么说真相只有一个——VirtualBox软件程序有BUG!现在没办法又降回到上一版。

Linux系统下VirtualBox死机卡了一下就好了,Windows系统下VirtualBox死机了直接跳出Windows经典界面——蓝屏!

使用命令行管理VirtualBox

VirtualBox提供了vboxmanage命令行管理方式,无论是Linux还是Windows平台都适用,下面环境主要以Linux为主。

系统:Ubuntu 16.04
VirtualBox:5.1.22(已安装扩展文件)

 

查看已有虚拟机UUID

vboxmanage list vms

 

查看在运行虚拟机

vboxmanage list runningvms

 

启动虚拟机XP_ZYT

vboxmanage startvm c49d5cf1-bae0-4377-a950-b277ea45e54b -type headless

–或者vmname方式

vboxmanage startvm Windows\ XP\ SP3 -type headless

参数–type headless是以无头模式运行

 

关闭虚拟机XP_ZYT

vboxmanage controlvm c49d5cf1-bae0-4377-a950-b277ea45e54b poweroff

 

安装扩展文件

sudo vboxmanage extpack install --replace ./Oracle_VM_VirtualBox_Extension_Pack-5.1.14.vbox-extpack

如果是更新扩展文件需要加上参数–replace

 

显示扩展文件

vboxmanage list extpacks

 

下载扩展文件

wget http://download.virtualbox.org/virtualbox/5.1.16/Oracle_VM_VirtualBox_Extension_Pack-5.1.16-113841.vbox-extpack

 

修改远程桌面连接默认端口(3389)

vboxmanage controlvm Windows\ XP\ SP3 vrdeport 3388

继续阅读“使用命令行管理VirtualBox”