从并发性考虑:
行锁 优于 表锁(行锁支持更多的并发连接)
从锁带来的开销来看:
表锁 优于 行锁 (前者开销更小)
InnoDB采用行锁、MyISAM使用表锁。[......]
我们来进行一些测试,论证是否有必要采用NoSQL。
因为没有条件造成同时并发读、写,因此暂时只测试单独的读和写。
MySQL
数据量:195W(行)
表结构:
ID(自增)
P_ID(逻辑上外键于另外一个表,考虑到效率,这里我们没有做这个外键)
URL(网页的URL)
主要测试的业务逻辑:根据某个P_ID来找出所有URL
插入速度:每秒1K行左右。
没有索引时候: 10.204(s) 10.172(s) 10.078(s)
对P_ID[......]
安装crond
yum install vixie-cron crontabs
先上脚本
[shell]
#!/bin/sh
DUMP=/usr/local/mysql/bin/mysqldump
OUT_DIR=/home/liheyuan/xxx/backup/
LINUX_USER=liheyuan
DB_NAME=liheyuan
DB_USER=liheyuan
DB_PASS=xxx
#How much days backup most
DAY[......]
MySQL数据库,如果数据库中Date字段为空为值为'0000-00-00"时,会报错,解决方案为在数据库连接后面加上
zeroDateTimeBehavior=convertToNull
就可以了~[......]
1、安装编译环境
[shell]yum install gcc gcc-c++ autoconf automake ncurses-devel make chkconfig[/shell]
2、下载,解压缩
[shell]
wget http://mysql.mirror.tw/Downloads/MySQL-5.1/mysql-5.1.45.tar.gz
tar -xzvf mysql-5.1.45.tar.gz
[/shell]
3、编译
[shell]
C[......]