mysql简单的碎片清理脚本

作者:阿川 发布时间:April 11, 2017 分类:服务器

#!/bin/bash 
date=`date +"%Y-%m-%d %H:%M:%S"` 
echo $date >>/root/information_schema.log 
tables=$(/usr/local/mysql/bin/mysql -u root -p"tina" 2>/dev/null -e "select concat(table_schema,'.',table_name) from 
information_schema.tables where data_free>0 and engine !='MEMORY';"
 |grep -v "concat" |grep -v "tinatest" |grep -v "information_schema" |grep -v "mysql") 
 
for table in $tables 
do 
  /usr/local/mysql/bin/mysql -u root-p"tina" 2>/dev/null -e "optimize no_write_to_binlog table $table;" >>/root/information_schema.log 
done

当你的lnmp后端装了apache,使用wp博客又要用https的时候

作者:阿川 发布时间:February 19, 2017 分类:服务器

今儿个和我朋友测试Wordpress程序,发现在windows的IIS下跑的嗷嗷的,https和http都正常的一塌糊涂.
但是同样在linux下面用LNMPA(nginx前端,apache后端)的时候.CSS与JS不会转换成https.现在记录下过程,方便以后查阅
首先申请一证书,保存好key和csr.将两个文件放入同一目录,比如/usr/local/nginx/conf下面,因为http配置与其他网站无异,所以暂且不记录,我们主要记录不同的配置.
在nginx写如何下配置:

server
    {
 
	listen 443;
	ssl on;
        ssl_certificate /usr/local/nginx/1bundle.crt;
        ssl_certificate_key /usr/local/nginx/2.key;
        ssl_session_timeout 5m;
        ssl_protocols TLSv1 TLSv1.1 TLSv1.2; #按照这个协议配置
        ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;#按照这个套件配置
        ssl_prefer_server_ciphers on;        
	proxy_set_header        X-Forwarded-Proto $scheme;
	add_header              Front-End-Https   on;
 
        server_name yourdomains.com;
 
        index index.html index.htm index.php default.html default.htm default.php;
        root  /home/wwwroot/caipiaopinpai;
 
        location /
        {
            try_files $uri @apache;
        }
 
        location @apache
        {
            internal;
            proxy_pass https://localhost:8081;
            include proxy.conf;
        }
 
        location ~ [^/]\.php(/|$)
        {
            proxy_pass https://localhost:8081;
            include proxy.conf;
        }
 
        location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
        {
            expires      30d;
        }
 
        location ~ .*\.(js|css)?$
        {
            expires      12h;
        }
 
        access_log  /home/wwwlogs/yourdomains.log.log  access;
    }

当升级webmin提示Error - Perl execution failed时

作者:阿川 发布时间:November 11, 2015 分类:服务器

当升级webmin的时候提示:

Error - Perl execution failed
Undefined subroutine &WebminCore::translate_filename
 called at /usr/libexec/webmin/web-lib-funcs.pl line 14.

这个时候我们可以ssh登录,root
yum -y upgrade webmin

然后重新访问webmin后台,看看是否已经正常
但是当你执行升级的时候提示:
TypeError: unsubscriptable object
可能先需要执行
yum clean metadata //通常执行这句就能解决,如果这句不能解决问题,继续下面操作 
yum clean dbcache 
yum makecache

之后再执行
yum -y upgrade webmin

我在执行完清除命令后.再升级webmin成功

windows下快速清理日志

作者:阿川 发布时间:February 9, 2015 分类:服务器

保存为bat文件
然后输入

del *.log /f/s/q/a

之后塞在日志目录下面..执行..over

当你对VPS关机,开机,软硬重启都无效时

作者:阿川 发布时间:November 23, 2014 分类:服务器

当你对VPS关机,开机,软硬重启都无效时,而且通过XenCenter对XenServer的VPS开机,关机操作时,出现以下错误:

Another operation involving the object is currently in progress
接着通过命令行对VPS操作,也出现错误:

[root@cl-535 ~]# xe vm-shutdown name-label=windows 2003
 
The operation could not be performed because a domain still exists for the specified VM

通过命令行,我们得出具体的错误,每台VPS都对应一个domain_ID,估计是这个domain_ID出现问题无法操作,那么我们找出这台VPS的domain_ID,然后删除,重新建立一个:
首先找出这台VPS的UUID:

1,直接通过XenCenter能看到这台VPS的UUID

2,通过命令找出这台VPS的UUID

xe vm-list name-label=windows 2003
 
    uuid ( RO)           : c9676696-3430-39b1-6ca7-267952bccc0c
    name-label ( RW): windows 2003
    power-state ( RO): running

查出这台VPS所属的的domain_ID
list_domains
 
      id   |                                 uuid                               |  state
      0   | 139c80ae-0bc2-4a43-a7a8-26fa178ed648    |      R
    263 | c9676696-3430-39b1-6ca7-267952bccc0c  |      B H
    302 | 5aa05c58-6e72-9554-961c-52d0439870b8  |      B

查到这个VPS的domain_ID是263,摧毁这个VPS的domain_ID
/opt/xensource/debug/destroy_domain -domid 263

然后就可以对VPS关机,重启操作了
xe vm-shutdown name-label=windows 2003 --force


xe vm-restart name-label=windows 2003

为cpanel安装一枚nginx前端插件

作者:阿川 发布时间:November 23, 2014 分类:服务器

最近客户的网站折腾的到蛋蛋疼,也不知道具体错误为何,总之.访问php时快时慢,他不是卡死,而且一直在等待载入,后台用easyApache折腾半天,无果.只好给他想其他的办法了,所以想到了传说的nginx,话说这玩意在前端的话.终究会好一点的..实际上我也不知道为啥要给他装个nginx在前面,但是总觉得这货要是一直这么卡下去,我估计要哭了.
安装方法很简单,首先到集群/远程访问中生成一个新的密钥,之后执行下面的命令安装.  

cd /usr/local/src
 
wget http://nginxcp.com/latest/nginxadmin.tar 
 
tar xf nginxadmin.tar
 
cd publicnginx
 
./nginxinstaller install

 安装完之后会提示你重启apache,完了你重启就会发现一堆的错误出现了,大部分都是提示你神马IP被占用啥的,错误我这没记录了,就不贴出来了.放个修改的代码
cd /etc/nginx/vhosts
perl -pi -w -e 's/server_name(.*) 你的服务器IP/server_name$1/g;' *
完了之后,去WHM里面的偏好设置中将

Allow apps that have not registered with AppConfig to be run when logged in as a reseller to WHM tweak setting

这行关闭,不然你运行插件他会提示401错误的.
之后添加个计划任务

crontab -e
0 */1 * * * /usr/sbin/tmpwatch -am 1 /tmp/nginx_client
完了之后保存,然后再测试网站访问.发现速度确实比之前要快很多啦.然后现在也没遇到问题.
之后把这篇蛋疼的日志贴进来.

当2003没有声音的时候

作者:阿川 发布时间:October 17, 2014 分类:服务器

两步:
管理工具 -> 终端服务配置 -〉连接-〉RDP-Tcp 右键,属性,客户端设置,最下面有个禁用下列项目,把音频映射的选项清除;
开始——管理工具——服务——windows audio--属性,选择自动.之后启用.
重启计算机,之后登陆就能听到声音了

关于客户的cgi+mysql程序

作者:阿川 发布时间:August 23, 2014 分类:服务器

1:安装
下载:d.kiiyi.com/ActivePerl-5.14.2.1402-MSWin32-x86-295342.rar
一路下一步.路径改成C:/usr安装
2:配置扩展
IIS中添加:

.cgi C:\usr\bin\perl.exe "%s" %s
.pl  C:\usr\bin\perl.exe "%s" %s

不怕死的可以直接在web服务扩展中设置
允许所有未知CGI扩展
允许所有未知ISAPI扩展

怕死的添加一个新的扩展
名字叫cgi,指向C:\usr\bin\perl.exe "%s" %s
之后,关于cgi+mysql的
首先
cd c:/usr/bin

之后执行:
ppm install DBI

接着执行
ppm install DBD::mysql

如果你发现你的DBI没有安装好.可以尝试用
ppm update DBI

将DBI升级到最新版.至此问题解决!
记录下.以后备用