服务器运维

mysql主从数据实时复制实现数据同步配置教程(超简单)

怎么安装mysql数据库,这里不说了,只说它的主从复制,步骤如下:

1、主从服务器分别作以下操作
  1.1、版本一致
  1.2、初始化表,并在后台启动mysql
  1.3、修改root的密码

2、修改主服务器master:
   #vi /etc/my.cnf
       [mysqld]
       log-bin=mysql-bin   //[必须]启用二进制日志
       server-id=222       //[必须]服务器唯一ID,默认是1,一般取IP最后一段

» 阅读全文

关键词: mysql主从

nginx取消和限制一些目录php执行权限无效的原因及正确设置方法

一个朋友问我,为什么nginx取消和限制一些目录php执行权限无效,以前我也遇到过,其实,这是方法问题,nginx取消和限制一些目录php执行权限的正确设置方法是:

代码:


location ~ /(attachments|upload)/.*.(php|php5)?$ {
deny all;
}
这里非常要注意的是,将以下代码添加至Server容器中的合适位置,也就是在定义fastcgi的规则之前.


关键词: nginx目录限制 , nginx

初写mysqlhotcopy 备份mysql数据库shell脚本

初写mysqlhotcopy 备份mysql数据库shell脚本,献丑,献丑,哈哈。。。。。
#!/bin/bash
dateDIR=`date +"%y-%m-%d"`
mkdir -p /data1/$dateDIR
user="mysql"
password="123456"
for i in `/usr/local/mysql/bin/mysql -u$user -p$password -e "show databases" | grep -v "Database"`
do
  if [ $i = "information_schema" ];then
	continue
  elif [ $i = "不要备份的数据。" ];then
	continue
  elif [ $i = "mysql" ];then
	continue
  fi
  /usr/local/mysql/bin/mysqlhotcopy -u $user -p $password --addtodest $i /data1/$dateDIR
done

关键词: mysqlhotcopy 备份 , 备份mysql数据库 , shell脚本

修改linux swap空间的swappiness,降低对硬盘的缓存

inux 会使用硬盘的一部分做为SWAP分区,用来进行进程调度--进程是正在运行的程序--把当前不用的进程调成‘等待(standby)‘,甚至‘睡眠 (sleep)’,一旦要用,再调成‘活动(active)’,睡眠的进程就躺到SWAP分区睡大觉,把内存空出来让给‘活动’的进程。
如果内存够大,应当告诉 linux 不必太多的使用 SWAP 分区, 可以通过修改 swappiness 的数值。swappiness=0的时候表示最大限度使用物理内存,然后才是 swap空间,swappiness=100的时候表示积极的使用swap分区,并且把内存上的数据及时的搬运到swap空间里面。
在ubuntu 里面,默认设置swappiness这个值等于60。

!!!! 如果内存较小,而进程调度频繁,硬盘的响动就会大了 !!!!

现在一般1个G的内存可修改为10, 2个G的可改为5, 甚至是0。具体这样做:
1.查看你的系统里面的swappiness
$ cat /proc/sys/vm/swappiness
不出意外的话,你应该看到是 60
2.修改swappiness值为10
$ sudo sysctl vm.swappiness=10
但是这只是临时性的修改,在你重启系统后会恢复默认的60,为长治久安,还要更进一步:
$ sudo gedit /etc/sysctl.conf
在这个文档的最后加上这样一行:
vm.swappiness=10
然后保存,重启。ok,你的设置就生效了。

关键词: swappiness , swap空间

Nginx启动失败,提示:98: Address already in use地址已被占用

如果nginx提示地址或端口被占用,例如下面:

nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)

则可以按照下面方法解决。
1、检查80端口被什么程序占用

fuser -n tcp 80

80/tcp: 9362 9363

2、删除对应的程序进程即可

kill -9 9362
kill -9 9363

3、如果确认就只有nginx占用,也可以直接结束nginx的所有进程

killall -9 nginx

关键词: nginx

Nginx正确配置404页面并返回404代码

Linux系统下Nginx配置404错误页面,网络上也有不少的相关文章,不过返回的状态码是200(正常状态码)。搜索引擎抓取到错误页面的时候,发 现返回的是200,他就认为这是一个正常请求并正常响应的一个网页,会进行收录。那么这样就造成了大量的重复页面,实际上对搜索引擎优化是很不利的。

这样的情况设置一般是这样的(网上的相关文章也是这样)

http{
.....
fastcgi_intercept_errors on;
.....
}
#----------------------------------------
server{
error_page 404 = /8c6f66dcfc8a3282/index.html; #只是转跳而已
}

正确的设置方法应该是这样(去掉等号)


http{
.....
fastcgi_intercept_errors on;
.....
}
#----------------------------------------
server{
error_page 404 /8c6f66dcfc8a3282/index.html;
} 
OK了,就是这样的,各位亲们要千万的注意的细节。


关键词: 404代码 , nginx配置404页面

linux下pureftp出现530错误,问题是pureftp连接mysql密码出错

linux下pureftp的ftp服务器,当我连接的时候出现530错误代码。问题是pureftp连接mysql出错了。

事情是这样的,为了保证服务器密码的安全性,我一般习惯使用@ 或者 含有 # 这样的字符作为密码字符串。

但是由于 pureftp 和 mysql的连接文件是存在 其配置文件:

/usr/local/pureftpd/pureftpd-mysql.conf

问题就出现这个配置文件中,不要使用 使用@ 或者 含有 # 这样的字符。

否则就会出现以上类似的错误。

深痛哀悼自己花了这么时间,搞了半天竟然是这样小错误。

记录下,作为笔记。

关键词: pureftp , 530错误 , pureftp出现530

【原创】rsync+inotify-tools实现触发式远程数据实时同步教程

rsync+inotify-tools实现触发式远程数据实时同步教程,这里主要是我的一些rsync+inotify-tools实现触发式远程数据实时记录,有不懂的话。可以留言哈。

A备份服务器:

创建文件:/etc/rsyncd.conf 内容:

» 阅读全文

关键词: 远程数据实时同步 , rsync+inotify-tools搭建