沒有限制,如果是myisam的存儲,最大的記錄數(shù)為 2*32 條記錄,如果你用--with-big-tables 則可以加倍到 2*2^32 另外受你的操作系統(tǒng)中文件大小的限制

創(chuàng)新互聯(lián)是一家專業(yè)提供芷江企業(yè)網(wǎng)站建設(shè),專注與成都網(wǎng)站設(shè)計(jì)、網(wǎng)站建設(shè)、HTML5建站、小程序制作等業(yè)務(wù)。10年已為芷江眾多企業(yè)、政府機(jī)構(gòu)等服務(wù)。創(chuàng)新互聯(lián)專業(yè)網(wǎng)站建設(shè)公司優(yōu)惠進(jìn)行中。
如果是innoDB,通過多個文件組成你的tablespace則沒有限制。
查看mysql數(shù)據(jù)庫大小的四種辦法,分別有以下四種:
第一種:進(jìn)去指定schema 數(shù)據(jù)庫(存放了其他的數(shù)據(jù)庫的信息)
use information_schema
第二種:查詢所有數(shù)據(jù)的大小
select concat(round(sum(DATA_LENGTH/1024/1024),2),'MB') as data from TABLES()
第三種:查看指定數(shù)據(jù)庫的大小,比如說:數(shù)據(jù)庫apoyl
select concat(round(sum(DATA_LENGTH/1024/1024),2),'MB') as data from TABLES where table_schema='apoyl';
第四種:查看指定數(shù)據(jù)庫的表的大小,比如說:數(shù)據(jù)庫apoyl 中apoyl_test表
select concat(round(sum(DATA_LENGTH/1024/1024),2),'MB') as data from TABLES where table_schema='apoyl' and table_name='apoyl_test';
如題,找到MySQL中的information_schema表,這張表記錄了所有數(shù)據(jù)庫中表的信息,主要字段含義如下:
TABLE_SCHEMA : 數(shù)據(jù)庫名
TABLE_NAME:表名
ENGINE:所使用的存儲引擎
TABLES_ROWS:記錄數(shù)
DATA_LENGTH:數(shù)據(jù)大小
INDEX_LENGTH:索引大小
如果需要查詢所有數(shù)據(jù)庫占用空間大小只需要執(zhí)行SQL命令:
mysql use information_schema
Database changed
mysql SELECT sum(DATA_LENGTH+INDEX_LENGTH) FROM TABLES;
+-------------------------------+
| sum(DATA_LENGTH+INDEX_LENGTH) |
+-------------------------------+
| 683993 |
+-------------------------------+
1 row in set (0.00 sec)
大小是字節(jié)數(shù) 如果想修改為KB可以執(zhí)行:
SELECT sum(DATA_LENGTH+INDEX_LENGTH)/1024 FROM TABLES;
如果修改為MB應(yīng)該也沒問題了吧
如果需要查詢一個數(shù)據(jù)庫所有表的大小可以執(zhí)行:
SELECT sum(DATA_LENGTH+INDEX_LENGTH) FROM TABLES WHERE TABLE_SCHEMA='數(shù)據(jù)庫名'
MySQL 3.22 限制的表大小為4GB。由于在MySQL 3.23 中使用了MyISAM 存儲引擎,最大表尺寸增加到了65536TB(2567 – 1字節(jié))。由于允許的表尺寸更大,MySQL數(shù)據(jù)庫的最大有效表尺寸通常是由操作系統(tǒng)對文件大小的限制決定的,而不是由MySQL內(nèi)部限制決定的。
InnoDB 存儲引擎將InnoDB 表保存在一個表空間內(nèi),該表空間可由數(shù)個文件創(chuàng)建。這樣,表的大小就能超過單獨(dú)文件的最大容量。表空間可包括原始磁盤分區(qū),從而使得很大的表成為可能。表空間的最大容量為64TB。
擴(kuò)展資料
MySQL數(shù)據(jù)庫中,數(shù)據(jù)量越來越大的優(yōu)化方案:
單表優(yōu)化可以從這幾個角度出發(fā):
1、表分區(qū)
MySQL在5.1之后才有的,可以看做是水平拆分,分區(qū)表需要在建表的需要加上分區(qū)參數(shù),用戶需要在建表的時候加上分區(qū)參數(shù);分區(qū)表底層由多個物理子表組成,但是對于代碼來說,分區(qū)表是透明的。
SQL中的條件中最好能帶上分區(qū)條件的列,這樣可以定位到少量的分區(qū)上,否則就會掃描全部分區(qū)。
2、增加緩存
主要的思想就是減少對數(shù)據(jù)庫的訪問,緩存可以在整個架構(gòu)中的很多地方;比如:數(shù)據(jù)庫本身有就緩存,客戶端緩存,數(shù)據(jù)庫訪問層對SQL語句的緩存,應(yīng)用程序內(nèi)的緩存,第三方緩存(如Redis等)。
在MySQL 5.1中,采用二進(jìn)制格式保存DECIMAL列的值,將9個十進(jìn)制數(shù)字打包在4字節(jié)中。對于每個值的整數(shù)部分和小數(shù)部分,其存儲要求是分別確定的。每9個數(shù)字需要4字節(jié),任何剩余的數(shù)字將占用4字節(jié)的一部分。例如,DECIMAL(18,9)列在小數(shù)點(diǎn)的每一側(cè)均有9位數(shù)字,因此,整數(shù)部分和小數(shù)部分均需要4字節(jié)。DECIMAL(20,10)列在小數(shù)點(diǎn)的每一側(cè)均有10位數(shù)字。對于每一部分,9位數(shù)字需要4字節(jié),剩余的1位數(shù)字需要1字節(jié)。
要想知道每個數(shù)據(jù)庫的大小的話,步驟如下:
1、進(jìn)入information_schema 數(shù)據(jù)庫(存放了其他的數(shù)據(jù)庫的信息)
use information_schema;
2、查詢所有數(shù)據(jù)的大小:
select concat(round(sum(data_length/1024/1024),2),'MB') as data from tables;
3、查看指定數(shù)據(jù)庫的大小:
比如查看數(shù)據(jù)庫home的大小
select concat(round(sum(data_length/1024/1024),2),'MB') as data from tables where table_schema='home';
4、查看指定數(shù)據(jù)庫的某個表的大小
比如查看數(shù)據(jù)庫home中 members 表的大小
select concat(round(sum(data_length/1024/1024),2),'MB') as data from tables where table_schema='home' and table_name='members';
php連接數(shù)據(jù)庫服務(wù)器,然后選擇使用的數(shù)據(jù)庫名稱為information_schema,然后執(zhí)行查詢就行了。看你問的這個問題應(yīng)該不會不知道用php訪問數(shù)據(jù)庫吧。
如果你權(quán)限不夠的話可能只能對特定的數(shù)據(jù)庫的信息進(jìn)行查詢。
網(wǎng)頁名稱:mysql列容量怎么算,mysql一張表存多少數(shù)據(jù)合適
文章起源:http://chinadenli.net/article37/dsgcssj.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供移動網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計(jì)公司、品牌網(wǎng)站建設(shè)、靜態(tài)網(wǎng)站、App開發(fā)、營銷型網(wǎng)站建設(shè)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)