Django 中的 Mysql 优化表命令

发布于 2024-12-02 02:41:19 字数 163 浏览 3 评论 0原文

关于 OPTIMIZE TABLE COMMAND 的作用有几个问题。我知道这有助于清除碎片表中可能出现的开销。对我来说,有时我需要运行它,并且我想创建一个视图来从 django 中运行这些命令。

最好的方法是使用原始 SQL 来做到这一点,还是有其他 django orm 来帮助解决这个问题?

There a few questions out there on what OPTIMIZE TABLE COMMAND does. I know that it helps to clear up the overhead that can hang around in fragmented tables. For me there are sometimes that I need to run it and I wanted to create a view to run these commands from within django.

Is the best way to do this using raw SQL or is there some other django orm to help with it?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

-小熊_ 2024-12-09 02:41:19

原始 SQL 是解决这个问题的方法。

from django.db import connections, transaction
cursor = connections['default'].cursor()
cursor.execute('OPTIMIZE TABLE;')
transaction.commit_unless_managed(using='my_db_alias')

Raw SQL is the way to go here.

from django.db import connections, transaction
cursor = connections['default'].cursor()
cursor.execute('OPTIMIZE TABLE;')
transaction.commit_unless_managed(using='my_db_alias')
小苏打饼 2024-12-09 02:41:19

最好的方法是执行直接自定义sql

但通过应用程序对这种系统或数据库进行管理是非常危险的;如果该命令出现问题,您的 Django 应用程序可能会脱机,数据库管理工具也会随之脱机。

The best way to do this is by executing the custom sql directly.

But it is very dangerous to this kind of system or database administration through the application; if something goes wrong with that command your django application could go offline taking your database management tools with it.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文