我们通过 performance_schema 观察了 memory 引擎的内存分配,由此推算了内部临时表的内存占用情况。
MySQL 在其他元数据中,诸如 information_schema.INNODB_TEMP_TABLE_INFO 中,并不展示内部临时表的信息,如图:
另外值得注意的是:memory 引擎会多划分出不少空间,比如本例中我们的数据是 300025 行 * 4 字节 =~ 1.2M,而引擎分出了 4M 多的内存来进行存储。
因此如果进行估算时,需要将数据量乘以一个较大的系数,才能准确估算。
1. 下载2. 解压缩
3. 添加path环境变量,路径指向mysql所在bin目录下
4. 在主目录下创建data文件夹
5. 注册windows系统服务
新建一个my.ini文件,拷贝到c:\windows目录下,内容如下:
[client]
port=3306
default-character-set=utf8
[mysqld]
# 设置为MYSQL的安装目录
basedir=C:\_04Tools\mysql-5.7.18-winx64
# 设置为MYSQL的数据目录
datadir=C:\_04Tools\mysql-5.7.18-winx64\data
port=3306
character_set_server=utf8
sql_mode=NO_ENGINE_SUBSTITUTION,NO_AUTO_CREATE_USER
#开启查询缓存
explicit_defaults_for_timestamp=true
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)