web-dev-qa-db-ja.com

Mysqlのインストール後に連合エンジンを追加する方法

Mysql 5.5.18を持っています
およびショーエンジン:

 
 show engines; 
 + -------------------- + --------- + -------------------------------------------------- ---------- + -------------- + ------ + ------------ + 
 |エンジン|サポート|コメント|トランザクション| XA |セーブポイント| 
 + -------------------- + --------- + ----------- ------------------------------------------------- + -------------- + ------ + ------------ + 
 | InnoDB |デフォルト|トランザクション、行レベルのロック、および外部キーをサポートします|はい|はい|はい| 
 | PERFORMANCE_SCHEMA |はい|パフォーマンススキーマ|いいえ|いいえ|いいえ| 
 | MRG_MYISAM |はい|同一のMyISAMテーブルのコレクション|いいえ|いいえ|いいえ| 
 | CSV |はい| CSVストレージエンジン|いいえ|いいえ|いいえ| 
 | MyISAM |はい| MyISAMストレージエンジン|いいえ|いいえ|いいえ| 
 |メモリ|はい|ハッシュベース、メモリに保存、一時テーブルに便利|いいえ|いいえ|いいえ| 
 + -------------------- + --------- + ----------- ------------------------------------------------- + -------------- + ------ + ------------ + 

ご覧のとおり、連合エンジンはリストの1つではありません。有効にする必要があります!! BLACKHOLE、FEDERATED、およびARCHIVEエンジンがリストから欠落している理由について何か考えはありますか?そしてどうすればいい 追加/有効化 それら?
[〜#〜]編集[〜#〜]
私はubuntu 11.10を所有していて、mysqlをppaからインストールしています...以下を/etc/apt/sources.listに追加しました

 deb http://ppa.launchpad.net/nathan-renniewaldock/ppa/ubuntu oneiric main 
 deb-src http://ppa.launchpad.net/nathan-renniewaldock/ppa/ubuntu oneiric main 

ご協力いただきありがとうございます

7
Alaa

なんとか解決策を見つけました...
既に利用可能なプラグインがあります
/usr/lib/mysql/plugin/ha_federated.so
rootとしてmysqlにログインし、次のクエリを実行しますmysql>install plugin federated soname 'ha_federated.so';
その後、my.cnfにfederatedを追加し、mysqlを再起動しました

5
Alaa

デフォルトインストール/バイナリインストールの場合

私の意見では、BLACKHOLE , ARCHIVEは、Mysqlサーバーをインストールすると、デフォルトでインストールされ、有効になります。

ただし、FEDERATEDはデフォルトでは有効になっていません。

これを手動で有効にするには、my.cnf file.edit my.cnfを編集し、[mysqld]セクションに次の行を追加します。

federated

Mysqlサーバーを再起動します。

Archiveを追加するには、リンクにアクセスしてください http://timanovsky.wordpress.com/2010/10/09/enabling-archive-storage-engine-in-ius-mysql-5-1/

ソースからインストールした場合、次のようにするはずです:

ブラックホールの場合:--with-blackhole-storage-engineオプション。

Archieveの場合:--with-archive-storage-engineオプション

Federatedの場合:--with-federated-storage-engineオプション

3
Abdul Manaf

投稿が少し古いことは知っていますが、多くの人々が連合エンジンで問題を抱えているようです。

Mysqlバイナリがyumを介してインストールされている場合、HA(高可用性)プラグインはすでにあります。 mysql CLI内でプラグインをロードするだけです。

基本的なプロセスは次のとおりです。

まだ起動していない場合は、mysqldを起動します。この時点で、「federated」が/etc/my.cnfにないことを確認してください。

例:現時点では、/ etc/my.cnfは標準のYUMインストールから次のようになります...

[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0

[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

Root(または十分な権限を持つ別のアカウント)でmysql CLIにログインします。

タイプ:show engines;

次のように、この時点ではFEDERATEDエンジンは表示されません。

mysql> show engines;
+------------+---------+------------------------------------------------------------+--------------+------+------------+
| Engine     | Support | Comment                                                    | Transactions | XA   | Savepoints |
+------------+---------+------------------------------------------------------------+--------------+------+------------+
| MRG_MYISAM | YES     | Collection of identical MyISAM tables                      | NO           | NO   | NO         |
| CSV        | YES     | CSV storage engine                                         | NO           | NO   | NO         |
| MyISAM     | DEFAULT | Default engine as of MySQL 3.23 with great performance     | NO           | NO   | NO         |
| InnoDB     | YES     | Supports transactions, row-level locking, and foreign keys | YES          | YES  | YES        |
| MEMORY     | YES     | Hash based, stored in memory, useful for temporary tables  | NO           | NO   | NO         |
+------------+---------+------------------------------------------------------------+--------------+------+------------+
5 rows in set (0.00 sec)

連合エンジンを有効にするには、次のように入力します。

install plugin federated soname 'ha_federated.so'

今、「エンジンを表示」するとFEDERATEDエンジンが表示されますが、オフになっています...

次のようになります。

mysql> show engines;
+------------+---------+------------------------------------------------------------+--------------+------+------------+
| Engine     | Support | Comment                                                    | Transactions | XA   | Savepoints |
+------------+---------+------------------------------------------------------------+--------------+------+------------+
| FEDERATED  | NO      | Federated MySQL storage engine                             | NULL         | NULL | NULL       |
| CSV        | YES     | CSV storage engine                                         | NO           | NO   | NO         |
| MyISAM     | DEFAULT | Default engine as of MySQL 3.23 with great performance     | NO           | NO   | NO         |
| InnoDB     | YES     | Supports transactions, row-level locking, and foreign keys | YES          | YES  | YES        |
| MEMORY     | YES     | Hash based, stored in memory, useful for temporary tables  | NO           | NO   | NO         |
| MRG_MYISAM | YES     | Collection of identical MyISAM tables                      | NO           | NO   | NO         |
+------------+---------+------------------------------------------------------------+--------------+------+------------+
6 rows in set (0.00 sec)

これで、次のように/ federatedという行を/etc/my.cnfファイルに安全に追加できます。

[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
federated

[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

Mysqldを再起動します(mysqldの再起動など)。

再起動後、mysql CLIに戻ります。

タイプshow engines;

FEDERATEDエンジンが利用可能で、SUPPORTがYESになっているはずです。

mysql> show engines;
+------------+---------+------------------------------------------------------------+--------------+------+------------+
| Engine     | Support | Comment                                                    | Transactions | XA   | Savepoints |
+------------+---------+------------------------------------------------------------+--------------+------+------------+
| FEDERATED  | YES     | Federated MySQL storage engine                             | NO           | NO   | NO         |
| CSV        | YES     | CSV storage engine                                         | NO           | NO   | NO         |
| MyISAM     | DEFAULT | Default engine as of MySQL 3.23 with great performance     | NO           | NO   | NO         |
| InnoDB     | YES     | Supports transactions, row-level locking, and foreign keys | YES          | YES  | YES        |
| MEMORY     | YES     | Hash based, stored in memory, useful for temporary tables  | NO           | NO   | NO         |
| MRG_MYISAM | YES     | Collection of identical MyISAM tables                      | NO           | NO   | NO         |
+------------+---------+------------------------------------------------------------+--------------+------+------------+
6 rows in set (0.00 sec)

そして、あなたは終わりました...出て行き、連合テーブルを作成します...

幸運を!

質問があれば私にメールしてください...

2

MySQL 5.5(現在)を使用したMLで私がする必要があるのは、次のとおりです。

  • / usr/local/mysql/support-files /から/etc/my.cnfに既存のファイルの1つをコピーします
  • [mysqld]セクション(my.cnfファイルの最後ではない)に 'federated'(引用符なし)を追加します
  • MySQLを再起動します

これは、テーブルを自動宣言する方法が必要な場合にも役立ちます。 http://sylnsr.blogspot.com/2012/11/auto-constructing-ddl-for-mysql.html

0
MikeM