关于OPTIMIZE TABLE COMMAND的内容有几个问题。我知道有助于清除碎片表中可能存在的开销。对我来说有时我需要运行它,我想创建一个视图来从django中运行这些命令。
是使用原始SQL执行此操作的最佳方法还是有其他django orm来帮助它?
答案 0 :(得分:2)
原始SQL就是这里的方式。
from django.db import connections, transaction
cursor = connections['default'].cursor()
cursor.execute('OPTIMIZE TABLE;')
transaction.commit_unless_managed(using='my_db_alias')
答案 1 :(得分:0)
执行此操作的最佳方法是executing the custom sql directly。
但是通过应用程序对这种系统或数据库管理是非常危险的;如果该命令出现问题,您的django应用程序可能会脱机使用您的数据库管理工具。