1. mysql 单个表可以储存多少数据
以下是摘抄mysql中文手册的解释:
MySQL 3.22限制的表大小为4GB。由于在MySQL 3.23中使用了MyISAM存储引擎,最大表尺寸增加到了65536TB(2567 – 1字节)。由于允许的表尺寸更大,MySQL数据库的最大有效表尺寸通常是由操作系统对文件大小的限制决定的,而不是由MySQL内部限制决定的。
InnoDB存储引擎将InnoDB表保存在一个表空间内,该表空间可由数个文件创建。这样,表的大小就能超过单独文件的最大容量。表空间可包括原始磁盘分区,从而使得很大的表成为可能。表空间的最大容量为64TB。
在下面的表格中,列出了一些关于操作系统文件大小限制的示例。这仅是初步指南,并不是最终的。要想了解最新信息,请参阅关于操作系统的文档。
操作系统
文件大小限制
Linux 2.2-Intel 32-bit
2GB (LFS: 4GB)
Linux 2.4+
(using ext3 filesystem) 4TB
Solaris 9/10
16TB
NetWare w/NSS filesystem
8TB
win32 w/ FAT/FAT32
2GB/4GB
win32 w/ NTFS
2TB(可能更大)
MacOS X w/ HFS+
2TB
2. 数据库表空间大小与数据文件大小是一个意思么
不等同。简单的说,数据库是一个整体,一个数据库下可保护多个用户、多个表、多个存储过程、多个job、多个视图等。而表空间可以认为是数据实体文件的分类,比如有用户表空间、系统表空间、索引表空间等,一个表空间可以保护多个实体文件。可以设置表空间的存储大小,但实际使用多少由已存在的数据来决定。比如设置用户表空间为10G,则存储设备就会分配10G给它。该表空间已经存在资料2G,那么还可以写8G数据进去,但此过程中该表空间只占用10G,不会增加,除非用完10G后不够,则需要再增加。
3. oracle:一个表空间可以对应多个数据文件.请举实例说明!
理论上没有限制,与计算机的字长和操作系统有关。
你不用考虑数据文件个数超限,按你的需要增加加就可以了。
创建数据文件语法:
ALTER TABLESPACE tablespace_name ADD
DATAFILE datefile_clause1 [,datefile_clause2] …… ;
Datafile_Clause — 完整语法如下:
Path\file_name SIZE nnnn{K|M} REUSE [AUTOEXTEND {OFF|ON NEXT nnnn{K|M} {MAXSIZE nnnn{K|M}|UNLIMITED}}]
其中: path\file_name — 数据文件的存储路径和文件名;
4. 关于oracle数据库表空间可以有多个数据文件问题
问题1:这张表是储存在那个数据文件中呢?能够查询到吗?
回答:可以通过表中每一行数据的rowid,查询到这条数据存储在那个数据文件中。
方法:select file_name, file_id from dba_data_files where file_id in
(select distinct dbms_rowid.rowid_relative_fno(rowid) from scott.emp);
问题2:在建表时能够指定存储在那个数据文件中吗?
回答:不能。只能指定表空间。