良玉的博客 点点滴滴,积水成河_良玉的博客_页游、手游linux运维工程师之路

svn 问题小结

遇到的问题:

1./dev/null/.subversion/servers Not a directory

svn: Can't open file '/dev/null/.subversion/servers': Not a directory


阅读全文...

Mysql中primary key主键冲突的可能性与解决方案

        在mysql中,数据的存储其实相当于Oracle的IOT表。主键和其他列的值以b+tree的形式组织在一起,在其叶子节点上不仅包含了主键,还包含了其他列的值。所以,我们在访问以主键作为where条件的查询时,极大的提高了效率。当然,这也存在一个缺点,主键和其他列存在一起,导致主键作为index比其他二级index需要的空间开销更大,所以当我们做recover index scan时,就会需要scan更多的block。除此之外,我们还需要数据按照主键升序排列,所以我们的主键就可能要设置为自增的,以免随机的数字作为主键,导致数据块频繁分裂,而减缓dml的速度。所以,一般情况下,我们会默认给每张表都加上一个自增的id作为主键,这个id的类型依据实际存放的数据量的范围来定。

阅读全文...

Linux下ssh加速,自动添加到know_hosts

经常遇到这样的问题,如下,很是麻烦,如果能自动跳过或者自动加入就好了,找到了解决办法:

[root@localhost ~]# ssh 10.10.10.1

The authenticity of host '[10.10.10.1]:22 ([10.10.10.1]:22)' can't be established.

RSA key fingerprint is 18:a2:50:29:d7:1f:21:3f:ff:9b:7c:2a:87:9d:a5:99.

Are you sure you want to continue connecting (yes/no)?


阅读全文...

mysql优化-选择合适的innodb_log_file_size

Choosing proper innodb_log_file_size


选择合适的innodb_log_file_size


If you’re doing significant amount of writes to Innodb tables decent size of innodb_log_file_size is important for MySQL Performance. However setting it too large will increase recovery time, so in case of MySQL crash or power failure it may take long time before MySQL Server is operational again.


如果对 Innodb 数据表有大量的写入操作,那么选择合适的 innodb_log_file_size 值对提升MySQL性能很重要。然而设置太大了,就会增加恢复的时间,因此在MySQL崩溃或者突然断电等情况会令MySQL服务器花很长时间来恢复。


阅读全文...

Mac重置root密码

Macbook air/Macbook Pro重置root密码

开机, 启动时按“cmmand+S”,若是有Windows双系统的需要首先按“option”选择要登录的系统,然后再按“cmmand+S”,按这时进入单一用户模式(Single user model)。Mac OS的单一用户模式有准入特权(Root access privilege)而不要求根密码(root password)。出现像DOS一样的提示符 #root>。在#root>下逐步输入以下命令,注意空格,大小写,若是没有看到#root>,那么重复上面的步骤。

//加载文件系统(读/写)
mount -uw /

//修改root密码
chroot /
passwd

//重启
reboot 或者 exit


阅读全文...

ssh报Nasty PTR record *** is set up for ****, ignoring

今天遇到

ssh报Nasty PTR record *** is set up for ****, ignoring


找到一段解释:

As strings, IP addresses are also valid domain names.  At one point, an

OpenSSH statement like:


  AllowUser pat@1.2.3.4


could be spoofed if an attacker could get the DNS to return the domain

"1.2.3.4" as the reverse lookup of the source address.  I'm not sure if

that's still true, but OpenSSH still detects this situation and ignores

a DNS PTR record if its rdata looks like an address.


阅读全文...

MySQL 5.5 my.cnf配置说明及优化

MySQL 5.5.13
参数说明:
[client]
character-set-server = utf8
port    = 3306
socket  = /data/mysql/3306/mysql.sock
[mysqld]
character-set-server = utf8
user    = mysql
port    = 3306
socket  = /data/mysql/3306/mysql.sock
basedir = /usr/local/webserver/mysql
datadir = /data/mysql/3306/data
log-error = /data/mysql/3306/mysql_error.log
pid-file = /data/mysql/3306/mysql.pid

阅读全文...

Linux中shred彻底删除文件

shred彻底删除文件的方法:

$ shred -u file
shred会用一些随机内容覆盖文件所在的节点和数据块,并删除文件(-u参数)。
如果想清除的更彻底一点可以加-z 参数,意思是先用随机数据填充,最后再用0填充。
$ shred -u -z file
另外shred还可以清除整个分区或磁盘,比如想彻底清除/dev/sdb1分区的内容可以这样:
$ shred /dev/sdb1 (注意不要加-u参数)
shred的详细参数:
-f, --force 更改权限允许写入(如有必要)
-n, --iterations=N 重写N次,默认为3次
--random-source=FILE 从指定文件读取数据
-s, --size=N 将文件粉碎为固定大小 (可使用后缀如K、M、C等)
-u, --remove 重写后截短并移除文件
-v, --verbose 显示进度
-z, --zero - add 用0覆盖数据
–help 显示帮助
–version 显示版本信息


阅读全文...

linux rm删除文件原理

今天发现建了目录,创建了很多文件,删掉文件,目录大小依旧是几十M,就来探探究竟。

首先,linux文件系统是用inode来存储文件的属性,而用Block来存储内容的。而这个inode里面是不存储文件的名字的,所以对于目录来说,它的作用就是通过自己的inode找到自己的block,block里面记录了你这个目录下面文件名和inode的对应


很多时候,我们都会发现,某个进程在对当前文件读写,但是我们依然能够rm, 是不是很奇怪?而windows下

阅读全文...

Linux下Memcache服务器端的安装

1.分别把memcached和libevent下载回来,放到 /tmp 目录下:
# cd /tmp
# wget http://www.danga.com/memcached/dist/memcached-1.2.0.tar.gz
# wget http://www.monkey.org/~provos/libevent-1.2.tar.gz

2.先安装libevent:
# tar zxvf libevent-1.2.tar.gz
# cd libevent-1.2
# ./configure –prefix=/usr
# make
# make install


阅读全文...

error while loading shared libraries: libevent-1.2.so.1: cannot open shared object file: No such fi

总结下来主要有3种方法:
1. 用ln将需要的so文件链接到/usr/lib或者/lib这两个默认的目录下边
ln -s /where/you/install/lib/*.so /usr/lib
sudo ldconfig


2.修改LD_LIBRARY_PATH

export LD_LIBRARY_PATH=/where/you/install/lib:$LD_LIBRARY_PATH
sudo ldconfig


3.修改/etc/ld.so.conf,然后刷新


vim /etc/ld.so.conf

add /where/you/install/lib

sudo ldconfig



阅读全文...

ssh报错reverse mapping checking getaddrinfo for xxxx [xxxx] failed - POSSIBLE BREAK-IN ATTEMPT!

解释如下:

Reverse Mapping Checking - Possible Break-in Attempt Error with SSH
Posted May 2nd, 2008 in Linux/Unix/BSD

When you connect to a host using SSH or SFTP it does a series of checks to ensure you are connecting to the host you are expecting to connect to. One of these is a reverse lookup on the IP address to check the hostname is the same as the hostname you are connecting to. If it's not, you'll get an error message like "reverse mapping checking getaddrinfo for ... POSSIBLE BREAK-IN ATTEMPT!". The post looks at a solution to this message.


阅读全文...