mysql占多少内存

作者&投稿:庞试 (若有异议请与网页底部的电邮联系)
mysql 内存占用多少速度最快~

解决mySQL占用内存超大问题
为了装mysql环境测试,装上后发现启动后mysql占用了很大的虚拟内存,达8百多兆

更改后如下:
innodb_buffer_pool_size=576M ->256M InnoDB引擎缓冲区占了大头,首要就是拿它开刀
query_cache_size=100M ->16M 查询缓存
tmp_table_size=102M ->64M 临时表大小
key_buffer_size=256m ->32M

  mysql的程序一共几十兆。跟其他数据库一样,需要占有多少空间要看数据库内容的大小。
  如果想知道MySQL数据库中每个表占用的空间、表记录的行数的话,可以打开MySQL的 information_schema 数据库。在该库中有一个 TABLES 表,这个表主要字段分别是:
  TABLE_SCHEMA : 数据库名
  TABLE_NAME:表名
  ENGINE:所使用的存储引擎
  TABLES_ROWS:记录数
  DATA_LENGTH:数据大小
  INDEX_LENGTH:索引大小
  所以要知道一个表占用空间的大小,那就相当于是 数据大小 + 索引大小 即可。

MySQL 自身内存规划

说到 MySQL 自身的内存规划,最先想到的就是 MySQL 中各种 buffer 的大小,innodb buffer pool 就是最鹤立鸡群的那个。innodb_buffer_pool_size 参数的大小究竟如何设置,才能保证 MySQL 的性能呢?在官网文档中可以找到这个参数的一些描述:

A larger buffer pool requires less disk I/O to access the same table data more than once. On a dedicated database server, you might set the buffer pool size to 80% of the machine's physical memory size.

意思是在专用数据库服务器上,可以将 innodb_buffer_pool_size 设置为计算机物理内存大小的 80%。在许许多多前辈的的经验中了解到,此参数的值设置为物理内存的 50%~80% 颇为合理。

举个栗子:

innodb buffer pool 分配 76G,每个连接线程最大可用 160M,最大有 3000 连接数,最大可能使用内存总量 545G,但是这台实例所在服务器的物理内存仅仅有 97G,远超物理内存总量。结果可想而知,这个实例在运行中经常被 oom-killer 杀死,想必原因之一即是因为一开始 MySQL 自身的内存规划欠妥。

innodb buffer pool 缓存数据的作用相信大家都懂,比如这个 case 中,可以发现该实例为写密集,读请求很少,innodb buffer 对性能改善作用不大,80% 的内存没必要,完全可以降低到物理内存的50%。



还暂用了一些虚拟内存,MYSQL的配置文件(MY.INI或者MY.CNF或者命令行参数)可以指定用多少缓冲区等参数,用这些参数可以控制MYSQL占用多少内存。 操作系统有很高的智能性,对于应用程序分配的内存,没有经常使用的那部分就保留到磁盘里面,把真实内存留给频繁访问的内存区域,所以你也不用太担心,遇到性能问题的再考虑优化。 我回答的很辛苦的。可以选择,2011/9/26 14:55:09


说一下mysql5的特性
1.6.1想要同时使用的所有堆表需要足够的额外内存 1.6.2不能在索引的一个部分搜索 1.6.3不能按顺序搜索下一个条目(即,使用这个索引做一个order by) 1.6.4mysql不能算出在2个值之间大概有多少行.这被优化器使用是用来决定使用哪个索引的,但是在另一个方面甚至不需要磁盘寻道 已赞过 已踩过< 你对这个回答...

mysqld.exe每次运行都占用900多M内存,但人家的都是几M的,何解呢?_百 ...
你把你的数据库导出备份后全删除,看看降下来没有。你的机箱不会是服务器吧?如果是服务器就不要搞了,如果是你自己玩的机器可以这么干。

Mysql 内存表和临时表的区别
我们通过 performance_schema 观察了 memory 引擎的内存分配,由此推算了内部临时表的内存占用情况。MySQL 在其他元数据中,诸如 information_schema.INNODB_TEMP_TABLE_INFO 中,并不展示内部临时表的信息,如图:另外值得注意的是:memory 引擎会多划分出不少空间,比如本例中我们的数据是 300025 行 * 4...

数据库占多少字节空间是什么意思,比如mysql,float占4字节,double占8字节...
是指DB最小存储单位吧

如何解决mysql上限报错问题mysql上限报错
a.索引表并确保查询使用索引。b.尝试使用JOIN而不是子查询。c.尽可能使用INT类型而不是VARCHAR类型来存储整数。d.避免使用SELECT *,只查询所需的列。e.分批执行大查询。f.使用分区表,以便将数据在多个物理存储位置上进行分布式处理。4.增加MySQL内存 如果您的MySQL配置文件已经设置为最佳值,并且您...

2G内存环境下MySQL编译安装全攻略2g内存编译mysql
2G内存环境下MySQL编译安装全攻略 MySQL是全球最流行的开源数据库,因其高性能、稳定性和可扩展性被广泛应用于各种应用场景。虽然官方提供了针对各种操作系统和架构的官方二进制包,但许多人更愿意通过编译源代码来获得更多的自定义和优化。本文将介绍在2G内存环境下编译安装MySQL的全过程。第一步:准备工作...

怎么安装mysql服务端
1、首先,解压下载的MySql安装包。2、双击打开解压后的包,点击如图程序。3、勾选协议,点击next。4、选择安装类型,点击下一步。5、设置安装路径。6、点击install。7、点击finsh。8、点击下一步。9、选择配置类型。10、根据自己的需求选择配置。11、勾选第一个,点击next。12、设置并发量。13、设置...

mysqld.exe进程占用内存400多M,求优化
SVCHOST.exe、wuauclt.exe这两个进程开机时候占用内存加起来会超过400M..两个进程各占一半..平时SVCHOST.EXE也会占用到130M的内存..wuauclt.exe还更可怕一些..机子本来就烂了..才512M的内存..这两个进程一占我基本上什么都做不了了啊..求教高手 ~怎么样才能解决这个问题啊..不占CPU的..就专门占...

mysqld占用CPU过高是什么原因
一般是睡眠连接过多,严重消耗mysql服务器资源(主要是cpu, 内存),并可能导致mysql崩溃。解决办法 :mysql的配置my.ini文件中,有一项:wait_timeout, 即可设置睡眠连接超时秒数,如果某个连接超时,会被mysql自然终止。wait_timeout过大有弊端,其体现就是MySQL里大量的SLEEP进程无法及时释放,拖累系统...

内存数据库,MySQL和sqlite,哪个更好
sqlite算是内存数据库吧 Mysql怎么也是内存数据了?sqllite我觉得主要简单适用、安卓系统用的比较多;不过安全性么,担心 其它内存数据库还有:Altibase Oracle 内存数据库系列 Berkeley DB 和 TimesTen eXtremeDB H2 Database Derby, HSQLDB等

贵南县17646977813: mysql 查看占用多大空间 -
羽咳安其: 主要看下数据库存放的目录大小即可 cd /var/lib/mysql du -sh *

贵南县17646977813: Mysql一条数据大概会占用多少容量 -
羽咳安其: 15到20个字节,50-70条数据就会到1kb了.结构不好,带来的问题就是随着数据的增加, 效率会成倍下降.

贵南县17646977813: MySql 5.6.16版本32位默认占用内存多大 -
羽咳安其: 您好.我看了下我的,默认占用的好像也不少;不用把服务关了.我现在的内存最小到达71M 在连接数为100 的时候 ,刚才是连接数为500时,内存达到216M.如果还有问题,可以继续追问,感谢.

贵南县17646977813: 关于mysql数据库空间大小的问题 -
羽咳安其: SQL Databases 20 说明你可以建立20个数据库.至于用多大空间,估计没有限制,因为一般Mysql占用不了太大的空间,就算你有十几万条数据库,也就占几十兆或上百兆.

贵南县17646977813: 求大神,mysql的服务,占笔记本的内存么? -
羽咳安其: 肯定是占内存的,但是占的都非常低,可以忽略不计,如果你长期不使用的话,建议你还是关掉.mysqld.exe是MySQL数据库服务器相关程序.你是装了MySQL了吧?不用的话就删了,或者直接到服务里面找到这个服务把关了也行~~

贵南县17646977813: 请问这些数据大约占用多少M的mysql数据库空间 -
羽咳安其: 10万条数据+10个字段很小了,mysql完全能搞定,如果不超过500万,建议用MYISAM引擎,超过500万用InnoDB引擎.

贵南县17646977813: 请问mysql 5.7占用多大C盘空间,我的C盘只剩1.2G了 -
羽咳安其: 就装c盘吧.大概也就200m左右.你安装的时候也可以选择其他路径.不过c盘还是会有mysql的文件的.

贵南县17646977813: 如何查看mysql每个连接使用多少内存? -
羽咳安其: 如果是linux系统,可以使用top命令,windows系统,查看资源管理器,找到mysql的进程,查看使用内存.

贵南县17646977813: 100M的MYSQL数据库可以存放多少东西? -
羽咳安其: 这个取决于你每个记录占多大空间了 譬如,你一行记录就一个整型字段,那就占4Byte 如果再加上一个最长20字符的英文字符串,估计平均为15,那就变成19byte 估计完这个,用100M*80%除一下就是了

贵南县17646977813: mysql消耗的内存为什么总是逐渐增加 -
羽咳安其: 我也遇到了MYSQL应用程序批量插数据时,程序内存一直增长!搞了两天,终于发现,不是My.ini的调参的问题,而是在执行插入后,声明的MySqlCommand对象没有明确析构的问题. public override int ExecuteNonQuery(string commandText) ...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网