mysql数据库可以存储多少数据量

mysql数据库可以存储多少数据量,第1张

在mysql中,每个数据库最多可创建20亿个表,一个表允许定义1024列,每行的最大长度为8092字节(不包括文本和图像类型的长度)。当表中定义有varchar、nvarchar或varbinary类型列时,如果向表中插入的数据行超过8092字节时将导致Transact-SQL语句失败,并产生错误信息。SQL

Server对每个表中行的数量没有直接限制,但它受数据库存储空间的限制。每个数据库的最大空间1048516TB,所以一个表可用的最大空间为1048516TB减去数据库类系统表和其它数据库对象所占用的空间。

阿里云RDS服务器报硬盘磁盘空间不足(100G的磁盘空间),登录后台查看,使用了130G,使用 SELECT file_name, concat(TOTAL_EXTENTS,'M') as 'FIle_size' FROM INFORMATION_SCHEMA.FILES order by TOTAL_EXTENTS DESC 查看,只使用了60G左右。那么还有70G是怎么用了呢?

查看问题:

查询 information_schema.innodb_trx ,看是哪些语句导致的。

原因:

ibdata文件很大,MySQL实例可能会 由于长时间不结束的查询导致 ibdata1 文件过大且无法收缩,导致实例空间满 ,为避免数据丢失,RDS会对实例进行自动锁定,磁盘锁定之后,将无法进行写入 *** 作

解决方案:

重启实例即可

mysql的程序一共几十兆。跟其他数据库一样,需要占有多少空间要看数据库内容的大小

如果想知道MySQL数据库中每个表占用的空间、表记录的行数的话,可以打开MySQL的 information_schema 数据库。在该库中有一个 TABLES 表,这个表主要字段分别是:

TABLE_SCHEMA : 数据库名

TABLE_NAME:表名

ENGINE:所使用的存储引擎

TABLES_ROWS:记录数

DATA_LENGTH:数据大小

INDEX_LENGTH:索引大小

所以要知道一个表占用空间的大小,那就相当于是 数据大小 + 索引大小 即可。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/10035610.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-04
下一篇 2023-05-04

发表评论

登录后才能评论

评论列表(0条)

保存