一、Keepalived+LVS+nginx双机热备
https://www.cnblogs.com/yunweidf/p/6211666.html
二、Python实现字典的key和values的交换
#encoding=utf-8
#反转字典 即key和val互换
dict1={1:2,3:4,6:7,9:10}
print '---生成器表达式'
def invert_dict(d):
return dict((v,k) for k,v in d.iteritems())
print invert_dict(dict1)
print '---列表推导'
def invert_dict2(d):
return dict([(v,k) for k,v in d.iteritems()])
print invert_dict2(dict1)
print '---itertools 提高大数据效率'
from itertools import izip
def invert_dict3(d):
return dict(izip(d.itervalues(),d.iterkeys()))
print invert_dict3(dict1)
三、Python字符串、元组、列表、字典互相转换的方法
https://www.cnblogs.com/yunweidf/p/6344287.html
四、window下安装mysqldb模块(虚拟环境)
https://www.cnblogs.com/yunweidf/p/6733242.html
五、iostat查看io情况
https://www.cnblogs.com/yunweidf/p/6830248.html
六、记一次mariadb升级故障
由于做mariadb集群,将版本从自带的5.5升级到10.0.3,升级成功后发现起不来
查journal log,只有一行warning
can’t create test file /var/lib/mysql/core.lower-test
google了一下,有两种方案
第一是说selinux导致的,但是ucloud的镜像默认就是关闭selinux的,所以不是这个问题
第二说是apparmor限制了进程的目录读写,但是没有安装这个东西,所以也不是这个问题。
其他文件权限之类的都检查过了,也不会出现问题。
这时我发现,如果直接用mysqld_safe和mysqld命令,跳过systemctl启动进程,能够让MariaDB正常起来,于是就去检查mariadb.service
发现其中有一行
ProtectHome=true
注释是
Prevent accessing /home, /root and /run/user
而我的datadir=/home/mysql
于是有两个方案
1.把它改成false,就能够正常启动服务了
2.移动mysql的数据库文件到非 /home, /root and /run/user 目录
解决