簡體   English   中英

Heroku 和 ClearDB MySQL 自動增量

[英]Heroku and ClearDB MySQL Auto Increment

我將 ClearDB 用於 mysql 數據庫。 我有一個帶有自動遞增主鍵的表。 問題是它不是增加1,而是增加10。請問我該如何解決這個問題?

此外,當我在本地主機上測試數據庫時,增量工作正常。

MySQL 對此有一個配置選項: auto_increment_increment 在您的 ClearDB 主機上可以將選項設置為 10,但在本地主機上設置為 1。

在每個環境中檢查它:

SELECT @@auto_increment_increment;

如果在 ClearDB 環境中設置為 10,您將不得不詢問設置該環境的人為什么要這樣配置。 可能有一個很好的理由。

不幸的是,它是一個全局設置,因此如果在服務器上設置它會影響該 MySQL 實例上所有數據庫中的所有表。

您可以覆蓋每個 session 的值,因此如果您希望您的應用程序使用與全局值不同的值,您可以在執行任何 INSERT 之前將其作為 SQL 查詢執行:

SET auto_increment_increment = 1;

但這僅對當前的 session 生效,因此每次打開新的 session 時都必須這樣做。

還要仔細檢查這個相關選項,因為如果增量已更改,它通常會設置為非默認值:

SELECT @@auto_increment_offset;

ClearDB 將 auto_increment 值全局設置為 10 以促進它們執行的集群功能。 您不能覆蓋它,即使在單租戶集群上也是如此。 這始終是 10 的倍數。他們不會為您調整它。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM