在我的prestashop中,我面临一个奇怪的问题。 Prestashop将创建临时表,该临时表放置在/ tmp中,因为这是在my.cnf中配置的,可以,但是会产生它们的原因以及可能导致的问题。文件示例: mysql:mysql /tmp/#sql_c2d_3.MAD
我的服务器使用centos 7,mariadb 10.3,php 7.1。如果还有其他需要,我将很乐意分享。
我的服务器使用centos 7,mariadb 10.3,php 7.1,我检查了https://mariadb.com/kb/en/library/mysqld-fills-tmp-with-file-tmpsql_26be_0mad/,其中说: 当您在InnoDB表上运行某些ALTER或CREATE命令时,在操作过程中会在mysql的tmpdir中创建一个临时表。my.cnf中的默认值为/ tmp
之后,我不确定该问题是由服务器还是由prestashop引起的。我检查了一个模块是否会导致这种情况,但是我找不到任何错误。
答案 0 :(得分:1)
当您在InnoDB表上运行一些ALTER / CREATE命令时,在操作过程中会在MySQL的临时文件夹中创建一个临时表(实际上,my.cnf中的默认值为/ tmp)。
据我所知,在PrestaShop 1.7.x中,临时MySQL表(例如,使用关键字CREATE TEMPORARY TABLE
)仅在特价页面(列出当前打折的产品)上使用。
在此文件中,通过Product类(文件getRandomSpecial()
)中称为/classes/Product.php
的方法来快速计算产品减少量。
我希望这会有所帮助,否则,建议您在/modules/
目录中扫描PHP文件中的关键字TEMPORARY TABLE
。