linux服务器跑mysql的时候,出现 Got error 28 from storage engine
的错误,从文章http://chenling1018.blog.163.com/blog/static/148025420104261181344/中得知是mysql的临时文件夹不够了。
再搜索得到Mysql临时文件夹的的相关信息,
MySQL使用环境变量TMPDIR的值作为保存临时文件的目录的路径名。如果未设置TMPDIR,MySQL将使用系统的默认值,通常为/tmp、/var/tmp或/usr/tmp。如果包含临时文件目录的文件系统过小,可对mysqld使用“—tmpdir”选项,在具有足够空间的文件系统内指定1个目录。
在MySQL 5.1中,“—tmpdir”选项可被设置为数个路径的列表,以循环方式使用。在Unix平台上,路径用冒号字符“:”隔开,在Windows、NetWare和OS/2平台上,路径用分号字符“;”隔开。注意,为了有效分布负载,这些路径应位于不同的物理磁盘上,而不是位于相同磁盘的不同分区中。
如果MySQL服务器正作为复制从服务器使用,不应将“--tmpdir”设置为指向基于内存的文件系统的目录,或当服务器主机重启时将清空的目录。对于复制从服务器,需要在机器重启时仍保留一些临时文件,以便能够复制临时表或执行LOAD DATA INFILE操作。如果在服务器重启时丢失了临时文件目录下的文件,复制将失败。
MySQL会以隐含方式创建所有的临时文件。这样,就能确保中止mysqld时会删除所有临时文件。使用隐含文件的缺点在于,在临时文件目录所在的位置中,看不到占用了文件系统的大临时文件。
进行排序时(ORDER BY或GROUP BY),MySQL通常会使用1个或多个临时文件。所需的最大磁盘空间由下述表达式决定:
(length of what is sorted + sizeof(row pointer)) * number of matched rows * 2 “row pointer”(行指针)的大小通常是4字节 |
但在以后,对于大的表,该值可能会增加。
对于某些SELECT查询,MySQL还会创建临时SQL表。它们不是隐含表,并具有SQL_*形式的名称。
ALTER TABLE会在与原始表目录相同的目录下创建临时表。
注:mysql临时文件夹的信息转载自 http://www.searchdatabase.com.cn/showcontent_23976.htm
分享到:
相关推荐
环境变量TMPDIR也被用作MySQL的临时文件存储位置。当“--tmpdir”选项未设置时,MySQL会采用TMPDIR环境变量指定的路径作为默认的临时文件目录。这一环境变量可以在操作系统层面上设置,并被多个应用程序使用,包括...
MySQL数据库在处理各种操作时,有时需要创建临时文件来存储中间数据,比如在进行排序、合并结果集或者处理复杂的查询时。这些临时文件的存储位置是通过环境变量TMPDIR来指定的。如果你没有设置TMPDIR,MySQL将自动...
8. **数据导入与导出**:在修复过程中,可能需要将数据导出到临时文件,然后重新导入到修复后的表中,以保持数据完整性。 9. **性能监控**:Navicat还提供了性能监控功能,可以帮助识别导致问题的资源瓶颈,如CPU、...
在这个特定的项目中,“SSH文件上传保存到Mysql数据库”指的是使用Struts2作为前端控制器,Spring作为依赖注入容器,以及Hibernate作为对象关系映射工具,实现文件上传功能并将数据存储到MySQL数据库的过程。...
总结来说,MySQL数据库的临时文件存储位置受环境变量控制,可以自定义以适应不同的存储需求,而临时文件的使用则涉及到数据库的排序、查询优化和表结构的变更等多种操作。理解这一机制有助于优化数据库性能并管理...
在这个场景中,我们关注的是如何使用Java Server Pages(JSP)来操作MySQL数据库中的Blob(Binary Large Object)字段,这是一个用于存储大容量二进制数据如图片、文档或音频文件的特殊字段类型。以下是关于这个主题...
项目文件`01_web_core.csproj`包含了项目的依赖和配置,通过引用`Pomelo.EntityFrameworkCore.MySql`,我们可以使用EF Core与MySQL数据库进行交互。 `appsettings.json`和`appsettings.Development.json`用于存储...
此外,还可以通过修改配置文件来更改特定表的存储位置,例如,将某些表的`.ibd`文件移动到其他目录,实现表级别的空间管理。 在日常管理和维护MySQL数据库时,了解这些文件的位置和作用是非常关键的。这有助于备份...
总的来说,导出和导入MySQL数据库涉及多种方法,SQL脚本方式更为安全且通用,而直接拷贝数据库文件则需谨慎操作,尤其是在不同环境之间。在实际操作时,根据具体情况选择合适的方法,并确保数据的完整性和安全性。
默认情况下,PHP会将session数据存储在服务器的临时文件系统中,但这存在一些缺点,如磁盘空间限制、数据安全性问题和在多服务器环境下的同步困难。因此,很多开发者选择将session数据存储到MySQL数据库中。 在实现...
### PHP连接MySQL数据库类的实现与使用 #### 类概述 在本PHP类`clsMysql`中,实现了通过面向对象的方式连接并操作MySQL数据库的功能。该类提供了丰富的接口来处理数据库连接、查询、错误处理等常见任务。 #### 类...
### MySQL数据库设计规范详解 #### 一、概述 在当今数据驱动的世界中,数据库的设计与管理至关重要。良好的数据库设计不仅能提升系统的稳定性和可扩展性,还能优化查询性能,确保数据安全。MySQL作为一种广泛使用...
10. **临时文件**:MySQL在处理大型查询或排序时可能创建临时文件,这些文件通常在操作完成后被删除。 在维护MySQL数据库时,理解这些文件的作用和交互方式非常重要。例如,为了优化性能,可能需要调整InnoDB缓冲池...
- `my.cnf` 文件是MySQL数据库的配置文件,其中包含了服务器的启动参数和设置。例如,`innodb_buffer_pool_size` 设置决定了InnoDB存储引擎缓存的数据量,对性能有很大影响。 - 优化配置还包括调整`max_...
MySQL数据库架构主要包括以下几个核心组件: 1. **客户端/服务器架构**: - **客户端**:通过多种编程语言接口连接MySQL服务器。 - **服务器**:处理客户端请求、执行查询、返回结果并管理数据存储。 2. **SQL层...