mysql 数据存储总结
由于最近一直在了解mysql。各种表类型的数据存储以及相关限制就是必须了解的方面了。
自己的服务器环境:OS Cent OS ext3,memory 4G, disk 2T block size 4K。
经调查,linux下文件最大是存在限制的。去google上搜了搜,大家说法不一,最终自己还是找到比较官方的说。详见http://en.wikipedia.org/wiki/Ext3 所以自己的服务器最大文件限制为2T。
这点搞清楚后,在数据库部署设计上就得考虑到这点。
简单说一下自己的数据库架构,是采用比较通用和成熟的做法,即:2个master,之间存在HA;N个slaves,负载分担读的负载。master和slaves采用replication异步同步。master上的数据库表类型为innodb,该类型有事物的概念,并且适合频繁读写。slaves数据库采用myisam表类型,可以更好的处理读请求。所以在此讨论这两种类型数据的存储形式。
innodb默认的是共享表空间的,这点在mysql官方网站文档上有很明确的说明。我就不费话了。如果采用共享表空间,可以配置多个数据文件到不同的磁盘,来解决数据存储瓶颈。但是自己始终觉得,大文件并不太利于维护,里数据移动等。所以还可以采用per-table表空间,但是问题又就来了,每个表的数据好像只能存储到mysql配置的数据目录内。这点自己没有找到合适的解决方案。
myisam表类型,它的index表和data表都是可以在create table的时候指定路径的。所以我们可以指定到不同的磁盘上,解决未来的数据存储瓶颈。很简单很强大。
相关文档:
优化MySQL服务器的配置参数,可以提高MySQL数据库的性能,但是对于配置较低的服务器来说,你无论怎么优化配置,都不会得到理想的效果,那就只能提高你硬件配置,来彻底有效地改善服务器的性能。
具体的方法如下:
一、在设置MySQL 时,应该配置其使用静态库而不是共享库。使用共享库的动态二进制系统可节省磁盘空间,但静 ......
Linux下mysql的安装步骤(非rpm安装)
1 下载mysql-standard-5.0.27-linux-i686-glibc23.tar.gz 包
2 解压到安装目录: tar -zxvf /edass/db/mysql-standard-5.0.27-linux-i686-glibc23.tar.gz
3 将 mysql-standard-5.0.27-linux-i686-glibc23链接到mysql : ln –s mysql-standard-5.0.27-linux-i686 ......
卸载Mysql
[root@localhost ~]# rpm -qa | grep mysql
mysql-3.23.58-9
php-mysql-4.3.4-11
mod_auth_mysql-20030510-4.1
mysql-server-3.23.58-9
说明:rpm –qa | grep mysql 命令是为了把mysql相关的包都列出来,卸载都从最下面的一个包开始,直到卸载掉第一个为止。执行rpm -q php,如果返回php版本, ......
1、显示数据库列表。
show databases;
刚开始时才两个数据库:mysql和test。mysql库很重要它里面有MYSQL的系统信息,我们改密码和新增用户,实际上就是用这个库进行好作。
2、显示库中的数据表:
use mysql; //打开库,学过FOXBASE的一定不会陌生吧
show tables;
3、显示数据表的结构:
describe 表 ......
1.它可以被分为三类:数字类型日期类和时间类型,字符串类型。
列类型用于描述:
M:指出最大的显示尺寸。最大的合法显示尺寸为255.
D:适用于浮点类型并之初跟随在十进制小数点后的数码的数量。最大的可能值是30,但是不应大于M.
2.方括号("[","]")指出可选的类型修饰符的部分.
*若指定了列类型为ZEROFILL,MYSQL将该 ......