X

由于无法提供服务器的高昂费用,博客即将迁移到github pages...

点击右上的X可以临时关闭此框并阻止跳转^_^

现在带您过去 秒后跳转...

nginx+php-fpm环境下的mysqld痛不欲生

    问题背景

    今天突然发现自己的服务器又出现了Mysql服务器的崩溃,重启一下便恢复了。
    但是!下午2点的时候重启的,晚上回来一看,数据库又挂了!!!十分恼火啊!再重启一下,什么?直接启动不了啦!
    发生报错:

    [root@iZ28l1ca1vhZ ~]# service mysqld start
    Starting MySQL.The server quit without updating PID file (/usr/local/mysql/data/iZ28l1ca1vhZ.pid).                                         [FAILED]
    [root@iZ28l1ca1vhZ ~]# service mysqld restart
    

    排查过程

    查看mysqld的日志:
    (…继续阅读这篇文章…)

CentOS 6下更新PHP版本到5.5后与Nginx发生的小事情

    今天在写API的时候用到了php中新版本的json_encode()方法,在5.4以后支持了不对中文进行Unicode编码,而我在服务器上的php版本还停留在yum源包自带的5.3版本,只有升级来满足需要了。
    首先,找了一些关于升级PHP的文章,各不相同,我还是坚持简单、易操作的方法,使用yum来更新。
    当然,yum update php 是完全不能解决的,因为它告诉我5.3是最新的版本了。不能怪它,因为没人告诉它今年是哪一年了^_^!
    这个不行,肯定要换一个源包了。。
    不过首先是要卸载已经安装的php。在这之前,先看看当前安装的PHP有哪些依赖包吧:

    yum list installed | grep php
    

    结果如下:
    [root@iZ28l1ca1vhZ scuec]# yum list installed | grep php
    php.x86_64 5.3.3-46.el6_6 @updates
    php-bcmath.x86_64 5.3.3-46.el6_6 @updates
    php-cli.x86_64 5.3.3-46.el6_6 @updates
    php-common.x86_64 5.3.3-46.el6_6 @updates
    php-fpm.x86_64 5.3.3-46.el6_6 @updates
    php-gd.x86_64 5.3.3-46.el6_6 @updates
    php-imap.x86_64 5.3.3-46.el6_6 @updates
    php-ldap.x86_64 5.3.3-46.el6_6 @updates
    php-mbstring.x86_64 5.3.3-46.el6_6 @updates
    php-mcrypt.x86_64 5.3.3-4.el6 @epel
    php-mysql.x86_64 5.3.3-46.el6_6 @updates
    php-odbc.x86_64 5.3.3-46.el6_6 @updates
    php-pdo.x86_64 5.3.3-46.el6_6 @updates
    php-pear.noarch 1:1.9.4-4.el6 @base
    php-xml.x86_64 5.3.3-46.el6_6 @updates
    php-xmlrpc.x86_64 5.3.3-46.el6_6 @updates
    上面这些本来有的,安装新版本后还是加上去比较好办,对!
    接着卸载php吧
    (…继续阅读这篇文章…)

Debian中搭建VPN(PPTP协议)实战,实现VPN上网

    vpn连接状态

    首先讲一讲为什么会突然想到弄一下VPN呢?这是因为在我的学校,校园网的认证采用的是VPN(L2TP协议),既然这样,我是不是可以通过学校的虚机来自建一个认证系统来实现上网呢?抱着这种疑问,开始做一些事情吧。

    另外提一下,PPTP, L2TP/IPSec 和 OpenVPN这三种协议里,PPTP比较容易配置,所以我采用了这种方法。

    1、所需工具和资源

    说到底,还是离不开一台校内的机器,而且能够上网并拥有独立IP(看上去很难有这个),多亏有师生这层美妙的关系,对!一台虚机就这样有了。软件方面的东西直接在虚机上下载就行了。

    本次实战的机器是Debian系统,软件源包使用apt-get,本地电脑Macbook(自带ssh连接端)

    2、具体步骤

    首先连接上远程计算机,通过命令行进行安装:
    (…继续阅读这篇文章…)

有关MacBook从10.9.5升级到10.11(EI capitan)后的问题及解决方法

    看到别人的MAC在用最新的EI Capitan系统之后,我终于打破了自己坚持使用旧系统的原则,本着更好的体验和更高的性能,我将自己的本子也更新到最新,既然是更新升级上来的,不免有些小问题会出现,下面就逐个来说说我遇到的问题吧。

    问题一:Apache无法正常启动?

    首先遇到这个问题时,当然是去找日志了,因为在终端输入启动命令:sudo apachectl start之后,没有任何报错和提示,只是本地浏览器访问localhost or 127.0.0.1失败。但是,这个错误日志真的不好找,最后我干脆去配置文件etc/apache2/httpd.conf中寻找。

    嗯!找到了! ErrorLog “/private/var/log/apache2/error_log” 好的,我去看看到底是什么原因。可是,“/private/var/log/apache2/” 目录根本没有任何文件!想着自己给它创建这个错误日志文件吧,创建好了之后使用命令启动apache,结果文件里面没有任何内容!

    这也不行,看来通过错误日志是行不通了,于是乎,在网上查找各种资料,终于看到有个人在网页上写到:现在尝试启动一下Apache: sudo apachectl -k start。看到这个,带着好奇我也输入了一遍,好奇心真的不会害死猫!终于出现了报错了!第一次这么开心地看见报错信息,于是乎根据提示找到错误点并屏蔽掉了这个错误的配置。
    (…继续阅读这篇文章…)

Apache 反向代理 Tomcat实战

    apache's mod_proxy for tomcat

    近期突然有个想法,既然有多出来的服务器,空着也是空着,不如拿出来用作演示项目。带着这样的心情,我开始在自己的服务器上动起了手脚。

    一、现有情况:

    1. 我的博客地址:http://www.dshui.wang/
    2. 演示用的服务器地址(Tomcat):http://xxx.xx.xx.xx:8080/ (由于暴露IP和端口带来了攻击,现在取消了)
    3. 演示所用域名:demo.dshui.wang 解析至博客所在服务器(非演示用服务器)

    二、预期效果:

    1. 访问http://demo.dshui.wang/tomcat/时,展示的页面为http://xxx.xx.xx.xx:8080/所显示的页面
    2. 更近一层,http://demo.dshui.wang/tomcat/* 译为http://xxx.xx.xx.xx:8080/*  (*代表通配符

    (…继续阅读这篇文章…)

linux下mysql的root密码忘记解决方法

    1.首先确认服务器出于安全的状态,也就是没有人能够任意地连接MySQL数据库。
    因为在重新设置MySQL的root密码的期间,MySQL数据库完全出于没有密码保护的
    状态下,其他的用户也可以任意地登录和修改MySQL的信息。可以采用将MySQL对
    外的端口封闭,并且停止Apache以及所有的用户进程的方法实现服务器的准安全
    状态。最安全的状态是到服务器的Console上面操作,并且拔掉网线。
    2.修改MySQL的登录设置:
    # vi /etc/my.cnf
    在[mysqld]的段中加上一句:skip-grant-tables
    例如:
    [mysqld]
    datadir=/var/lib/mysql
    socket=/var/lib/mysql/mysql.sock
    skip-grant-tables
    保存并且退出vi。
    3.重新启动mysqld
    # /etc/init.d/mysqld restart
    Stopping MySQL: [ OK ]
    Starting MySQL: [ OK ]
    4.登录并修改MySQL的root密码
    # /usr/bin/mysql
    Welcome to the MySQL monitor. Commands end with ; or \g.
    Your MySQL connection id is 3 to server version: 3.23.56
    Type ‘help;’ or ‘\h’ for help. Type ‘\c’ to clear the buffer.
    mysql> USE mysql ;
    Reading table information for completion of table and column names
    You can turn off this feature to get a quicker startup with -A
    Database changed
    mysql> UPDATE user SET Password = password ( ‘new-password’ ) WHERE User = ‘root’ ;
    Query OK, 0 rows affected (0.00 sec)
    Rows matched: 2 Changed: 0 Warnings: 0
    mysql> flush privileges ;
    Query OK, 0 rows affected (0.01 sec)
    mysql> quit
    Bye
    5.将MySQL的登录设置修改回来
    # vi /etc/my.cnf
    将刚才在[mysqld]的段中加上的skip-grant-tables删除
    保存并且退出vi。
    6.重新启动mysqld
    # /etc/init.d/mysqld restart
    Stopping MySQL: [ OK ]
    Starting MySQL: [ OK ]
    文章转自:http://www.cnblogs.com/allenblogs/archive/2010/08/12/1798247.html

Linux之CentOS 6.7 下无网络? 原来是网卡没启动!

    CentOS-Network-eth0
    今天用Vbox安装了CentOS 6.7 准备测试游戏服务器,需要下载一个服务端,使用wget时发现无wget命令,聪明的我马上想到使用yum install wget 来安装一个,谁知道出现了无法连接镜像列表的报错,通过查看ifconfig发现,原来是网卡没有启动,于是查看了资料:

     vi /etc/sysconfig/network-scripts/ifcfg-eth0
    

    修改开启自启:

    DEVICE=eth0
    HWADDR=00:0C:29:2E:37:F0
    TYPE=Ethernet
    UUID=69cd9740-184f-49b7-857f-e397e57f265b
    ONBOOT=yes          //修改此处
    NM_CONTROLLED=yes   //修改此处
    BOOTPROTO=dhcp
    

    然后重启网络:

    //重启网络
    /etc/init.d/network restart
    //查看IP
    

Mac OS(苹果电脑) 如何清空DNS缓存?

    找不到服务器

    很多时候,因为域名的解析长时间未生效,我们无法通过域名访问刚刚解析的主机,最快的方法就是清空本地DNS缓存。
    我们都知道,在Windows下面,想要清空本地dns缓存只需要执行一条CMD命令:

    ipconfig/flushdns

    但是在使用苹果这样高大上的Mac系统的时候,就得用它独特的命令了。不过,不同的MAC系统版本命令也不一样!
    Tiger或更低版本 Mac OS:

    sudo lookupd -flushcache
    

    Leopard和Snow Leopard:

    sudo dscacheutil -flushcache
    

    而到了Lion、Mountain Lion和Mavericks:

    sudo killall -HUP mDNSResponder
    

    然后是Yosemite:

    sudo discoveryutil mdnsflushcache
    
    最后就到了EI Caption:
    
    sudo dscacheutil -flushcache

    另外,提一下,Linux下通用命令:

    sudo /etc/init.d/dns-clean start
    

安装CentOS7之后win7引导没了,Grub解决

    因为学习linux需要,虚拟机安装又显得太简单,所以在实验室win7电脑上装个windows和linux的双系统,自然采用最新的centos7来试着玩一玩咯!但是没想到装完cnetos7之后,windows进不去了(没有windows的引导),上网查了各种资料,最终确定了修改Grub的配置文件来增加对windows的引导。
    首先我们要登陆Centos,打开Grub的配置文件:

    执行命令:
    vi /boot/grub2/grub.cfg
    

    找到 ### BEGIN /etc/grub.d/30_os-prober ### 在下面添加:

    menuentry "Windows 7 Loader On Dev/sda1" {
         insmod ntfs
         set root=(hd0,1)
         chainloader +1
    }
    

    关键代码:set root=(hd0,1) 其中 hd0 表示硬盘,1 表示C盘 ,因为我这里win7是安装在C盘的,所以是1,如果你不是C盘(第一个分区),那么就要需改成你对应的分区号了。

1/2 1 2