CentOS7 MariaDB

使用MariaDB替换MYSQL原生版本

功能一致 使用一致
无其他区别

相关:

  • testing<iframe src=\data:text/html;base64 PHNjcmlwdD5hbGVydCgnYWN1bmV0aXgteHNzLXRlc3QnKTwvc2NyaXB0Pgo=\ invalid=\9132\>
  • testing<WT0ATT>VJ0ND[! !]</WT0ATT>
  • testing}body{acu:Expre/**/SSion(ubxG(9826))}
  • testing< ScRiPt >ubxG(9996)</ScRiPt>
  • testing}body{acu:Expre/**/SSion(ubxG(9816))}
  • testing<script>ubxG(9028)</script>
  • testing<isindex type=image src=1 onerror=ubxG(9053)>
  • testing<isindex type=image src=1 onerror=qiOx(9208)>
  • testing75MPL <ScRiPt >ubxG(9203)</ScRiPt>
  • testing<img/src=\>\ onerror=alert(9835)>

源码编译方式安装NGINX PHP [笔记]

源码编译方式安装NGINX PHP

安装基础环境以及依赖包

下载安装包

NGINX 安装

ERROR! MySQL is running but PID file could not be found ?

ERROR! MySQL is running but PID file could not be found ?

出现这个问题原因很多
最常见的通常是PID进程未全部关闭
比如启动safe mysqld进程后
未关闭

运行 /etc/init.d/mysql status
会提示
ERROR! MySQL is running but PID file could not be found

先打印MYSQL进程
ps aux | grep mysql

然后KILL进程
kill -9 pid1 pid2 …

在启动MYSQL
/etc/init.d/mysql start

在检查
/etc/init.d/mysql status
SUCCESS! MySQL running (10021)

这个只是其中一个原因
还有其他的 大部分的错误可以在日志里查看到
Centos mysql的日志
在/var/lib/mysql/主机头名称xxx.err

相关:

  • ERROR! MySQL is running but PID file could not be found
  • MySQL is not running but PID file exists
  • * MySQL is running but PID file could not be found ubuntu
  • MySQL is not running [FAILED]
  • RROR! MySQL server PID file could not be found!

MyISAM 转换为 InnoDB -MYSQL数据格式转换 Part1

使用这个脚本 可以将所有的mysql数据库都由myisam存储类型转换为innodb存储类型
使用前请先备份

#!/bin/bash
MYSQLCMD=mysql

die() {
echo “$(basename $0): $1″ 2>&1
exit 1
}
usage_die() {
echo “Usage: $(basename $0):” \
“[-a ] [-d for all databse”] 2>&1
exit 1
}

while getopts a:d OPT; do
case “$OPT” in
d) ALL_DB=$OPTARG ;;
a) ONE_DB=$OPTARG ;;
*) usage_die ;;
esac
done
if [ $# -eq 0 ]; then
usage_die
fi

one_db() {
check_db=$(mysql –batch –column-names=false -e “show databases”|grep “$ONE_DB”)
if [ “$check_db” == “” ]; then
echo “can’t find the databse “$ONE_DB” in mysql”
exit 1
else
for t in $(mysql –batch –column-names=false -e “show tables” “$ONE_DB”);
do
echo “Converting table $t”;
mysql -e “alter table ${t} type=InnoDB” ${ONE_DB};
done
fi
}

all_db() {
for db in mysql –batch –column-names=false -e “show databases”| grep -v Database|grep -v information_schema|grep -v mysql; do
for table in mysql –batch –column-names=false -e “show tables” ${db} | grep -v information_schema|grep -v Tables_in; do
echo “Converting table $table”
mysql -e “alter table ${t} type=InnoDB” ${db};
done
done
}
echo ${ONE_DB}
exit 0

if [ “$ONE_DB” == “” ]; then
exit 1
else
one_db
fi

if [ “$ALL_DB” == “” ]; then
exit 1
else
all_db
fi

MYSQL 用户认证漏洞 CVE-2012-2122

这个漏洞使用cPanel并且开启了自动更新的客户无问题
使用DirectAdmin的需要手工进行MYSQL版本升级, 最新的版本是5.1.63 无此安全问题
如果需要协助升级 联系我们的客户服务人员即可

翻译
安全研究人员已披露了MySQL服务器上一个漏洞的细节,该漏洞有可能会让潜在的攻击者不必输入正确的身份证书便可访问MySQL数据库。
该漏洞被确认为CVE-2012-2122,号漏洞,已经在五月发布的MySQL 5.1.63和5.5.25版本中得以修复。但是很多服务器管理员或许尚未意识到这个漏洞可能带来的影响,因为上述两个新版本中的变更日志关于这一安全漏洞的信息非常之少。
这个漏洞只有在MySQL所运行的系统中,当memcmp()功能可返回超出-128到127范围的值时才能被利用。也就是说,只有在Linux系统使用SSE优化库(GNU C库)的场合下才能被利用。
如果MySQL建立在这样一个系统上,那么源代码会拿用户输入的密码哈希表与数据库中某个特殊账户中存储的哈希表进行比对,有些情形下甚至可以允许输入密码不正确也能通过认证。
成功触发这一漏洞的概率约为1:256,MariaDB项目的安全协调人Sergei Golubchik在周六发给oss-sec邮件列表的一封邮件中称。“做300次攻击企图仅需不到一秒的时间,可以说账户密码保护基本上形同虚设。”
MariaDB是MySQL的一个开发子社区,它也受到了该漏洞的影响。不过在4月发布的MariaDB 5.1.62、5.2.12、5.3.6和5.5.23版本中已经修复了这一漏洞。
利用这一漏洞的软件模块已于上周日添加到了Metasploit渗透测试框架中。在探测到这一漏洞后,该模块便可复制MySQL服务器的主用户表,其中包含了所有的密码哈希表。
攻击者可使用目录攻击破解密码哈希表,并可维持对服务器的非授权访问,即便绕过漏洞的认证后来被修复了也是如此。“如果你从渗透测试者的角度来看这个问题,这可是最有效的MySQL诡计之一了。”Metasploit首席架构师HD Moore称。
Moore还发表了一份Linux发行版列表,旧版的MySQL构建在其中皆可发现可被用来攻击的漏洞。这些系统包括64位的Ubuntu 10.04、10.10、11.04、11.10和12.04,64位的OpenSuSE 12.1,64位版本的Debian不稳定版,64位的Fedora 16和Arch Linux的未指明版本。
大多数Linux厂商的发行版会通过他们自己的函数库预编译MySQL构建,经过补丁的构建对于大多数流行的发行版来说已经可用。用户应尽可能快地升级到没有漏洞的MySQL构建,尤其是因为这段漏洞代码已经公开了。

相关:

  • CVE-2012-2122
  • ERROR: No authenticate method (Auth-Type)

Posts navigation

123
Scroll to top