nodeのID/番号(nid)を初期化する方法

ここでは、nodeのID(nid)を初期化し、1から採番する方法を記載します。
サイト構築時にテスト投稿したnodeを本番環境稼動前に削除し、nidを初期化した場合に有効な手段です。下記手順で実行してください。

手順

  1. 全nodeを削除します。管理セクション→コンテンツの管理→コンテンツ の画面から全コンテンツを削除してください。
  2. キャッシュをクリアします。管理セクション→サイトの環境設定→パフォーマンス の画面下部にある「キャッシュデータのクリア」ボタンを押下してください。
  3. nidを初期化します。Drupalが利用するデータベースに接続し、以下のコマンドを実行してください。
    mysql > alter table node auto_increment=0;

以上です。上記作業を行い、ノードを新規作成すると、nidが1のノードが作成されます。

解説

管理画面からnodeを全て削除しただけでは、nidは初期化されず、次の番号からまた採番されます。
これは、データベースのnodeテーブルのnidカラムが、auto_incrementのためです。
ここでは、データベースにテーブル構造を更新するSQLを実行し、強制的にnidをリセットしています。

補足

nidを100から開始したい場合は手順3で実行するクエリを auto_increment=100 とします。

Drupalでお悩みですか?
Drupalのことは株式会社OSSCにお任せください。
Drupal支援サービスのご紹介
弊社執筆書 Drupal Pro Bookのご紹介

この記事のトラックバックURL(あなたの記事にはこのページへのリンクを含めて下さい):

http://www.webgogo.jp/trackback/764