随笔分类 -  linux

摘要:PHP版:Perl:# 需要先安装 String::CRC32use String::CRC32;sub getCrc{ open my $fd , '<' , $filepath or die("error"); my $crc2 = crc32($fd); my $crc_out = sprintf("%x", $crc2); print uc($crc_out) ; } 阅读全文
posted @ 2013-08-14 17:35 ifeixiang 阅读(627) 评论(0) 推荐(0) 编辑
摘要:今天同步文件的时候发现了这个问题:原因是:tar_file_month=`date +%m`rsync -auzq --exclude="2012_0[1-9]" --exclude="2012_1[0-2]" --exclude="2013_0[1-"$(($tar_file_month-1))"]" 当月是8月,tar_file_month变成了08,下面执行 $(($tar_file_month-1))的时候,变成了08-1,而0x对于shell来说,会解析成8进制,08超过了8进制的表示范围,所以报错:sh 阅读全文
posted @ 2013-08-09 09:38 ifeixiang 阅读(4568) 评论(0) 推荐(0) 编辑
摘要:今天有同学问题,搜索ip的时候怎样能把select ip from tabelx where ip like '%192.168.0.1%'这种句子的性能优化。的确,使用 like %x 的方式,数据库没办法使用索引,一定会进行整表扫描,所以我们需要避免这种方法。之前同事叫我尝试一下用 match() against 的方法。于是顺便试了试,——前提:全文索引只支持MyISAM表select * from `data`.`test` where match (ip) against('192') 这样搜索出来没有结果。google了一会儿,发现网上的例子都是搜索 阅读全文
posted @ 2013-08-07 18:42 ifeixiang 阅读(2631) 评论(1) 推荐(0) 编辑
摘要:对付Linux的问题,其实很多都是权限问题,细心想一下即可。centos6.4默认装的是mysql5.1,使用 yum update 也update不了。google了一下,找到个yum安装的方法:http://www.webtatic.com/packages/mysql55/先备份一下:(非常重要)备份数据库文件: 复制 /var/lib/mysql/下的数据库文件到安全的目录 (复制回来的时候注意修改权限 ) cp -r /var/lib/mysql /home/www/bak/mysql/再把这个目录清空了(mysql启动的时候会重新加载数据库文件)备份mysql数据库用户文件:mys 阅读全文
posted @ 2013-07-26 15:14 ifeixiang 阅读(5837) 评论(0) 推荐(0) 编辑
摘要:为了保证数据库安全,建立了若干个只能select的用户,但在权限授权的时候出现了不能连接的问题,一个个尝试了一下,需要将 : 管理 ->SUPER项勾选才行(使用phpmyadmin),上面提示:“允许在达到最大连接数时连接,对于大多数像设置全局变量或杀死其它用户线程这样的管理操作是必需的。” 阅读全文
posted @ 2013-07-24 12:57 ifeixiang 阅读(217) 评论(0) 推荐(0) 编辑
摘要:在Cron的环境下,是没有定义路径的,所以,service xxx start等等要使用绝对路径 =》 /sbin/service xxx startservice的路径可以用whereis service找到 阅读全文
posted @ 2013-07-09 08:30 ifeixiang 阅读(560) 评论(0) 推荐(0) 编辑
摘要:yum erase libevent*wget https://github.com/downloads/libevent/libevent/libevent-2.0.21-stable.tar.gztar xzvf libevent-2.0.21-stable.tar.gzcd libevent-2.0.21-stablemake clean./configure --prefix=/usrmakemake installln -s /usr/lib/libevent* /usr/lib64/ 阅读全文
posted @ 2013-06-21 16:34 ifeixiang 阅读(406) 评论(0) 推荐(0) 编辑
摘要:2013年6月28日更新:写了个脚本去自动化的转数据库并导入: 1 MYSQL_DIR='/var/lib/mysql/tmp_test/' 2 DB_USER='test' 3 DB_PASS='test' 4 DB_TMP='tmp_test' 5 DB_TARGET='test' 6 DB_TARGET_TABLE='test' 7 8 DATA_URL="http://test/test.tar.gz" 9 #get filename 10 FILENAME=$(base 阅读全文
posted @ 2013-06-15 14:41 ifeixiang 阅读(2107) 评论(0) 推荐(0) 编辑
摘要:我们在ubuntu图形界面下用eclipse写了一个动态库,到centos下调用时出现错误, error while loading shared libraries: libmysqlclientso.so.0: cannot open shared object file: No such file or directory以为没装mysql-client,因为ubuntu下叫这个,但是centos下直接就叫mysql,服务器版本叫mysql-server,查找了一下libmysqlclient.sofind / -name libmysqlclient.so,果然发现不同:这是因为没有把 阅读全文
posted @ 2013-06-07 11:51 ifeixiang 阅读(123905) 评论(0) 推荐(4) 编辑
摘要:快速复制大量小文件主要使用先打包再复制的方法:find . -name '*.jpg' -print > jpg.txttar怎么从文件中读取文件列表呢?查了很久,用 -T -T, --files-from F get names to extract or create from file F注意这里不要加 -v参数啦,对于大量文件,控制台输出是很浪费时间的...tar -czf jpg.tar.gz -T yourfile 快速删除文件——使用rsync原理:使用rsync同步一个空目录即可。对于万级文件的目录基本是秒删,回车就OKhttp://my.oschina. 阅读全文
posted @ 2013-06-06 19:36 ifeixiang 阅读(6076) 评论(1) 推荐(0) 编辑
摘要:在想怎么将服务器端的程序与PHP交互的时候PHP扩展进程端口:由于服务器程序执行的是大数据计算操作,耗时会比较长,使用php扩展可能会堵死PHP进程,所以决定采用这种方法 1 /* 2 * yf_deamon.cpp 3 * 4 * Created on: Jun 3, 2013 5 * Author: cloud 6 * 开启一个socket端口,进行本地进程通信 7 * 8 */ 9 #include <stdio.h>10 #include <stdlib.h>11 #include <string.h>12 13 #include <unist 阅读全文
posted @ 2013-06-03 20:15 ifeixiang 阅读(227) 评论(0) 推荐(0) 编辑
摘要:使用sshfs挂载服务器文件系统sudo apt-get install sshfssshfs user@hostname:path /mnt/datacentos:(0.5.2这个才行,新版本反而不行~~~)wget http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.2-2.el6.rf.i686.rpmrpm -ivh rpmforge-release-0.5.2-2.el6.rf.i686.rpmyum install fuse-sshfs用curlftpfs挂载FTP服务器安装curlftpfs1 sudo 阅读全文
posted @ 2013-06-03 14:55 ifeixiang 阅读(1558) 评论(0) 推荐(0) 编辑
摘要:如果ping不慢,但是使用ssh,ftp,mysql连接的时候慢,大部分原因是因为服务器在尝试解析你的IP,这在很多时候是没有必要的。可以禁用这些解析vsftpd连接慢的问题修改vsftpd.conf,添加下面一句reverse_lookup_enable=NOssh连接慢vi /etc/ssh/s... 阅读全文
posted @ 2013-06-03 11:40 ifeixiang 阅读(431) 评论(0) 推荐(0) 编辑
摘要:在网上找了许多资料,发现不同系统下的编写方法有点不同,这里用的了ubuntu下的方法,供参考:先写一下小程序运行 , init_daemon: 1 #include <stdlib.h> 2 #include <stdio.h> 3 4 int main() 5 { 6 daemon(0,0); // 将进程声明为守护进程 7 8 int i = 0 ; 9 while(1)10 {11 i++ ;12 sleep(100000);13 }14 }编译,生成可执行文件: gcc -c init_daemon gcc ... 阅读全文
posted @ 2013-05-30 15:35 ifeixiang 阅读(5300) 评论(0) 推荐(0) 编辑
摘要:在配置mysql的时候,经常重启mysql可能有点慢,可以使用:/usr/libexec/mysqld --help --verbose来查看/etc/my.cnf文件是否有错 阅读全文
posted @ 2013-05-28 10:01 ifeixiang 阅读(2367) 评论(0) 推荐(0) 编辑
摘要:对于大数据的表,使用delete太费时,可以用:TRUNCATE TABLE '表名'这样不会保留日志 阅读全文
posted @ 2013-05-28 09:51 ifeixiang 阅读(2010) 评论(0) 推荐(0) 编辑
摘要:用网易的源会快很多,步骤如下:http://mirrors.163.com/.help/centos.html1、首先备份/etc/yum.repos.d/CentOS-Base.repomv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/Ce... 阅读全文
posted @ 2013-05-17 13:12 ifeixiang 阅读(244) 评论(0) 推荐(0) 编辑
摘要:装了很多次机,做了很多次重复工作,最后,总结以下装CentOS经验:注:很多问题其实都不是问题,先把selinux关了!setenforce 0 ,不然会死的很惨!1,先更新源启用国内的源:163或sohu163:http://mirrors.163.com/.help/centos.html如果想使用新的软件,建议用REPL和remi的源#remi的源rpm -ivh http://rpms.famillecollet.com/enterprise/remi-release-6.rpmrpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6#Fedor 阅读全文
posted @ 2013-05-15 16:21 ifeixiang 阅读(1194) 评论(0) 推荐(0) 编辑
摘要:CentOS安装好Nginx后,需要设置一下防火墙,接受80端口的访问,防火墙的设置可以直接修改/etc/init.d/iptables文件,或者使用下面的命令/etc/init.d/iptables -I INPUT -p tcp --dport 80 -j ACCEPT /etc/init.d/iptables save再访问Nginx就可以了。常用命令:启动nginx:nginx重启nginx:killall -HUP nginx测试nginx配置:nginx -tnginx的几个默认目录使用 whereis nginx 命令可以看到nginx装到了哪里 nginx: /usr... 阅读全文
posted @ 2013-05-15 15:43 ifeixiang 阅读(215) 评论(0) 推荐(0) 编辑
摘要:配置Git,Hadoop都会需要配置ssh无密码连接,具体步骤如下:生成本机密钥 : ssh-keygen拷贝到服务器: ssh-copy-id -i .ssh/id_rsa.pub user@host完成。现在可以用 ssh user@host 直接连接服务器了对于非标准端口,可以使用下面:ssh... 阅读全文
posted @ 2013-05-13 11:35 ifeixiang 阅读(338) 评论(0) 推荐(0) 编辑