データベースの最適化

FAQ ID:NEO-T0066

該当商品:パッケージ版

対象バージョン:全バージョン

desknet’s NEOをご利用いただくうえで、定期的に実施いただきたい最適化の項目が3点あります。


1. データベースの最適化(PostgreSQL対応版のみ)

※SQL Server / Oracle対応版では本実施は不要です。


desknet’s NEOはデータベース上でデータを管理されており、データの登録や、変更、削除といった際に、データベース上のデータ領域を使用します。

desknet’s NEO上で削除をしても、PostgreSQLの特性上、データベース上では消費していたデータ領域は解放されません。

データ領域を削除したり、再利用可能な状態にしたりするためには、VACUUMといったデータベース側のメンテナンスが必要です。

※VACUUMを実施しないと、ディスクの圧迫やレスポンスの低下が発生する恐れがあります。


PostgreSQL 9.2以降では”自動バキューム”(autovacuum)が標準設定されています。そのため、頻繁にデータベースの最適化を実施する必要はなくなりました。ただし、ユーザー情報やスケジュールの予定の一括インポートなどで、一度に大量のデータを登録・変更・削除などを行うと、データベースファイルが断片化し、性能に影響を及ぼす恐れがあります。その際は、「vacuum full」や「reindex」などのコマンドで保守作業を行うようお願いいたします。

保守の際は、以下のコマンドにて実施してください。


データベースの最適化とは

削除されたデータが占有している領域を再利用可能な状態にします。

データの隙間を詰めてディスクに保存し直します。空きディスクを増やします。

データベース内のインデックス(索引)を再作成することにより、不要な索引を削除します。


※vacuumdb(-fオプション付き)、reindexdbコマンド実行中はdesknet’s NEOを使用できません。

※データ量に応じて時間がかかります。

※月に1回程度の実施をお勧めいたします。

※desknet’s NEO V2.0より、最適化対象に「dneoftsdb」が追加されました。

※desknet’s NEO V4.0より、最適化対象に「dneologdb」が追加されました。



Windowsサーバー – PostgreSQLの場合

 > cd C:\Program Files\PostgreSQL\13\bin
 > vacuumdb.exe -z -f -p 5432 -U postgres dneodb
 > reindexdb.exe -p 5432 -U postgres dneodb
 > vacuumdb.exe -z -f -p 5432 -U postgres dneoftsdb
 > reindexdb.exe -p 5432 -U postgres dneoftsdb
 > vacuumdb.exe -z -f -p 5432 -U postgres dneologdb
 > reindexdb.exe -p 5432 -U postgres dneologdb

※PostgreSQL9.2、9.3、9.6をご利用の場合は、上記コマンドの「13」を 「9.2」「9.3」「9.6」に 読み替えてください。

※-pは稼働しているPostgreSQLのポート番号を指定してください。(PostgreSQLの初期使用ポートは5432)V3.5以前のバージョンからアップデートしている場合や、別のバージョンのPostgreSQLをインストールしている場合は「-p 5433」とポート番号が変わっている場合があります。詳細はPostgreSQLを構築されたシステム担当者または業者様にご確認ください。



Linuxサーバー – PostgreSQLの場合

 # su – postgres
 $ cd /usr/local/pgsql/bin/
 $ vacuumdb -z -f -p 5432 dneodb
 $ reindexdb -p 5432 dneodb
 $ vacuumdb -z -f -p 5432 dneoftsdb
 $ reindexdb -p 5432 dneoftsdb
 $ vacuumdb -z -f -p 5432 dneologdb
 $ reindexdb -p 5432 dneologdb

※-pは稼働しているPostgreSQLのポート番号を指定してください。(PostgreSQLの初期使用ポートは5432)V3.5以前のバージョンからアップデートしている場合や、別のバージョンのPostgreSQLをインストールしている場合は「-p 5433」とポート番号が変わっている場合があります。詳細はPostgreSQLを構築されたシステム担当者または業者様にご確認ください。



2. 個人アカウントのメール索引の最適化(ウェブメール:個人アカウントをご利用の場合)


desknet’s NEOでは、検索用データやステータス等をメール索引ファイルで保存しています。

レスポンスの低下を防ぐための保守作業として、「メール索引の最適化」の実行がより重要です。

・データの隙間を詰めてディスクに保存し直します。空きディスクを増やします。

・データベース内のインデックス(索引)を再作成することにより、不要な索引を削除します。


「メール索引の最適化」はユーザー毎にログイン後、設定メニューから行なうことができます。

また、管理ツールから一括して最適化を行うことができます。

・マニュアル「メール索引の最適化を行う

 ・各ユーザーでdesknet’s NEOにログインし、ウェブメールのメール一覧画面の[設定]→[メールの最適化]にてメール索引の最適化を実施します。

 ・[管理者設定]→[共通設定]にて「ユーザー毎の最適化処理」が「許可する」に設定されている必要があります。

・管理者マニュアル「個人アカウントのメール索引の最適化を行う

 ・システム管理者にてdesknet’s NEOにログインし、[ウェブメール]画面(別ウィンドウではなく元のウィンドウ)にて右上の管理ボタン(歯車アイコン)をクリックし、[機能管理]→[メール索引の最適化]にてメール索引の最適化を実施します。

※ウェブメールのレスポンスが遅くなった場合は「メール索引の最適化」をお試しください。

※週1回~月1回、「メール索引の最適化」を実行する等、定常的に最適化を行ってください。

※最適化を行うスパンが長くなると、最適化処理の実行時間も比較的長くなります。

※最適化処理中のアカウントは使用することができなくなります。管理者ユーザーより一括でメール索引の最適化を実施する場合は、desknet’s NEOにアクセスしていないタイミングで実施するようお願いいたします。(処理にかかる時間は1アカウントあたり数分~30分程度です。データ量により異なります。)

※本処理は自動実行することも可能です。

・管理者マニュアル「メール索引の最適化を自動実行する



3. 共有アカウントのメール索引の最適化(ウェブメール:共有アカウントをご利用の場合)


desknet’s NEOでは、検索用データやステータス等をメール索引ファイルで保存しています。

レスポンスの低下を防ぐための保守作業としては、「メール索引の最適化」の実行がより重要です。

・データの隙間を詰めてディスクに保存し直します。空きディスクを増やします。

・データベース内のインデックス(索引)を再作成することにより、不要な索引を削除します。


共有アカウントの「メール索引の最適化」は、ユーザー毎にログインし、設定メニューから行なうことができます。

また、管理ツールから一括して最適化を行うことができます。

・マニュアル「共有アカウントのメール索引の最適化を行う

 ・[管理者設定]→[共通設定]にて「ユーザー毎の最適化処理」が「許可する」に設定されている必要があります。

・管理者マニュアル「共有アカウントのメール索引の最適化を行う

 ・システム管理者にてdesknet’s NEOにログインし、[ウェブメール]画面(別ウィンドウではなく元のウィンドウ)にて右上の管理ボタン(歯車アイコン)をクリックし、[機能管理]→[共有アカウント設定]→[メール索引の最適化]にてメール索引の最適化を実施します。

※ウェブメールのレスポンスが遅くなった場合は「メール索引の最適化」をお試しください。

※週1回~月1回、「メール索引の最適化」を実行する等、定常的に最適化を行ってください。

※最適化を行うスパンが長くなると、最適化処理の実行時間も比較的長くなります。

※最適化処理中のアカウントは使用することができなくなります。管理者ユーザーより一括でメール索引の最適化を実施する場合は、desknet’s NEOにアクセスしていないタイミングで実施するようお願いいたします。(処理にかかる時間は1アカウントあたり数分~30分程度です。データ量により異なります。)

アンケートにご協力お願いいたします。
上記の回答で解決しましたか?