将MySQL的临时目录建立在内存中的教程_Mysql

 MySQL 系统会在内存(MEMORY)和磁盘(MyISAM)中建立临时表,如何能知道在磁盘中建立了多少临时表以及在内存中建立多少临时表呢?你可以通过下面命令获知:
 

mysql> SHOW GLOBAL STATUS LIKE 'Created_tmp%tables';
+-------------------------+----------+
| Variable_name      | Value  |
+-------------------------+----------+
| Created_tmp_disk_tables | 49094  |
| Created_tmp_tables   | 37842181 |
+-------------------------+----------+

很显然,在内存中的临时表的性能要比在磁盘中好得多得多,因此我们希望尽可能的在内存中建立临时表。

为了实现这个要求,我们先检查下临时表的配置大小:
 

mysql> SHOW GLOBAL VARIABLES LIKE '%table_size';
+---------------------+----------+
| Variable_name    | Value  |
+---------------------+----------+
| max_heap_table_size | 25165824 |
| tmp_table_size   | 25165824 |
+---------------------+----------+

如果临时表的大小比上述值小,则放于内存中的 MEMORY 表;如果比上述值大则存放于磁盘中的 MyISAM 表。

但还有一个其他的因素会导致存放到磁盘的 MyISAM 表,那就是 MEMORY 表不能处理 TEXT 和 BLOG 类型数据。这种情况下 MySQL 会直接写入磁盘中的 MyISAM,并算作是 Created_tmp_disk_tables 的值。

 

如果临时表已经开始导致严重的 I/O 性能问题,那么你就要考虑使用磁盘内存映射来代替物理磁盘。

在 Linux 上我们有两种方法在内存中建立 RAM-Disk,分别是 ramfs 和 tmpfs。

这里我们推荐使用 tmpfs。

可通过如下命令来创建 RAM-disk:
 

shell> mkdir -p /mnt/ramdisk
shell> chown mysql:mysql /mnt/ramdisk
shell> mount -t tmpfs -o size=512M tmpfs /mnt/ramdisk

为了在系统下次启动时自动创建,我们可以将下列脚本置于 /etc/fstab 文件中:

 

tmpfs      /mnt/ramdisk   tmpfs  rw,mode=1777  0    0

MySQL 还是将数据写到默认的磁盘,可通过下面命令来检查:
 

mysql> SHOW GLOBAL VARIABLES LIKE 'tmpdir';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| tmpdir    | /tmp |
+---------------+-------+

你可以修复 my.cnf 文件来改变这个路径,然后重启数据库。

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索mysql
mysql 建立临时表、mysql 临时文件目录、mysql临时目录、mysql 修改临时目录、mysql怎么建立临时表,以便于您获取更多的相关知识。

时间: 2024-09-20 18:13:18

将MySQL的临时目录建立在内存中的教程_Mysql的相关文章

将MySQL的临时目录建立在内存中的教程

  MySQL 系统会在内存(MEMORY)和磁盘(MyISAM)中建立临时表,如何能知道在磁盘中建立了多少临时表以及在内存中建立多少临时表呢?你可以通过下面命令获知: mysql> SHOW GLOBAL STATUS LIKE 'Created_tmp%tables'; +-------------------------+----------+ | Variable_name | Value | +-------------------------+----------+ | Create

[20140928]数据库建立在内存中.txt

[20140928]数据库建立在内存中.txt --单位正好到了几台新机器,内存128G. --测试一下dbca slient建立数据库,因为完成后可以丢弃,把数据库建立在内存中. # mkdir -p /mnt/ramdisk # mount -t tmpfs -o size=8G tmpfs /mnt/ramdisk # su - oracle --检查环境变量是否设置正确 $ env | grep -i oracle USER=oracle LD_LIBRARY_PATH=/u01/app

在内存中建立 MySQL 的临时目录(转)

MySQL 系统会在内存(MEMORY)和磁盘(MyISAM)中建立临时表,如何能知道在磁盘中建立了多少临时表以及在内存中建立多少临时表呢?你可以通过下面命令获知: ? 1 2 3 4 5 6 7 mysql> SHOW GLOBAL STATUS LIKE 'Created_tmp%tables'; +-------------------------+----------+ | Variable_name           | Value    | +-------------------

MySQL操作数据库和表的常用命令新手教程_Mysql

我是新手 学习如何管理和导航MySQL数据库和表是要掌握的首要任务之一,下面的内容将主要对MySQL的数据库和表的一些常用命令进行总结,一些我们不得不掌握的命令,一些信手拈来的命令. 处理数据库 1.查看数据库 获取服务器上的数据库列表通常很有用.执行show databases;命令就可以搞定. 复制代码 代码如下: mysql> show databases; 2.创建数据库 复制代码 代码如下: mysql> create database db_test; Query OK, 1 ro

mysql 5.7.13 winx64安装配置方法图文教程_Mysql

针对之前安装mysql的笔记进行了总结,分享给大家. 1.下载 下载地址:http://dev.mysql.com/downloads/mysql/ 根据电脑配置来选,我选了 windows(x86,64-bit),ZIP Archive这个,点击Download,页面跳转到如下图 点击最下面的No thanks,just start my download,开始下载. 我的mysql安装路径是D:\Mysql\mysql-5.7.13-winx64 2.配置my.ini文件,新增data文件夹

mysql 5.7.16 winx64安装配置方法图文教程_Mysql

针对之前安装mysql的笔记进行了总结,分享给大家. 版本:MySQL-5.7.16-winx64平台:Windows 7 x64 1.进入mysql主目录(建议将其移到C或D盘的根目录,并改名为mysql) 2.配置path环境变量(如D:\JAVA\mysql)添加到环境变量中. 3.mysql主目录下的my-default.ini文件改名为my.ini,最简单配置如下 # For advice on how to change settings please see # http://de

MySQL基于SSL协议进行主从复制的详细操作教程_Mysql

当mysql跨越互联网进行复制时别人可以窃取到mysql的复制信息,这些信息是明文的,因此存在不安全性,这里通过ssl对复制的信息进行加密.当在客户没有固定ip而要访问服务器时,mysql要允许任意地址的访问,服务端和客户端通过证书验证可以防止暴力破解. 开始之前让我们先来回顾一下SSL协议客户端OpenSSL的安装过程:安装openssl mkdir /test/setup cd /test/setup tar zxvf openssl-0.9.8b.tar.gz cd openssl-0.9

MySQL性能监控软件Nagios的安装及配置教程_Mysql

 Nagios是一款Linux上成熟的监视系统运行状态和网络信息的开原IT基础设施监视系统,Nagios能监视所指定的本地或远程主机及服务,例如HTTP服务.FTP服务等,同时提供异常通知.事件处理等功能,当主机或服务出现故障时,Nagios还可以通过邮件.手机短信等形式在第一时间进行通知.Nagios可运行在Linux和Unix平台上,同时提供一个可选的基于浏览器的Web界面,方便系统管理员查看系统的运行状态.网络状态.各种系统问题及日志异常等. 环境: 192.168.0.201     

mysql 5.7.11 winx64安装配置方法图文教程_Mysql

在64位Windows7操作系统上安装和配置MySql数据库系统. 一.mysql5.7.11 winx64安装配置方法 步骤: 1.官网下载MySQL数据库和驱动程序(Windows):mysql-5.7.11-winx64.zip 2.创建数据库配置文件:my.ini Example: 1.解压压缩包至:D:\Program Files 2.创建 D:\Program Files\mysql-5.7.11-winx64\my.ini 配置文件 3.初始化和启动Mysql服务: 1.以管理员权