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:在建表時能夠指定存儲在那個數據文件中嗎?
回答:不能。只能指定表空間。