Come aggiungere il motore Federated dopo l'installazione di Mysql
-
16-10-2019 - |
Domanda
Ho Mysql 5.5.18
e su motori di spettacolo:
show engines; +--------------------+---------+------------------------------------------------------------+--------------+------+------------+ | Engine | Support | Comment | Transactions | XA | Savepoints | +--------------------+---------+------------------------------------------------------------+--------------+------+------------+ | InnoDB | DEFAULT | Supports transactions, row-level locking, and foreign keys | YES | YES | YES | | PERFORMANCE_SCHEMA | YES | Performance Schema | NO | NO | NO | | MRG_MYISAM | YES | Collection of identical MyISAM tables | NO | NO | NO | | CSV | YES | CSV storage engine | NO | NO | NO | | MyISAM | YES | MyISAM storage engine | NO | NO | NO | | MEMORY | YES | Hash based, stored in memory, useful for temporary tables | NO | NO | NO | +--------------------+---------+------------------------------------------------------------+--------------+------+------------+
, come si vede motore federata non è uno della lista. ho bisogno di abilitarlo !! alcuna idea del motivo per cui i motori BLACKHOLE, federate, e archiviare mancano dalla lista? E come posso Aggiungi / abilitare di loro?
Modifica
Ho Ubuntu 11.10 e mysql installato dal ppa ... ho aggiunto quanto segue a /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
Grazie per il vostro aiuto
Soluzione
Sono riuscito a trovare una soluzione ...
v'è un plugin già disponibile presso
/usr/lib/mysql/plugin/ha_federated.so
Ho appena collegato a mysql come root ed eseguire la seguente query
mysql>install plugin federated soname 'ha_federated.so';
poi ho aggiunto federata my.cnf e riavviato mysql
Altri suggerimenti
Se l'installazione di default / installazione binario
A mio parere il BLACKHOLE , ARCHIVE
sono installato e abilitato per impostazione predefinita quando si installa il server MySQL.
, ma il FEDERATED
non è abilitato dal default.For che ti piace questo
È possibile attivare manualmente avete modificare la tua my.cnf file.edit my.cnf e nella sezione [mysqld], aggiungere la riga:
federated
Ora riavviare il server MySQL.
Per aggiungere Archive
Vai al link http://timanovsky.wordpress.com/2010/10/09/enabling-archive-storage-engine-in-ius-mysql-5-1/
Se hai installato dai sorgenti, allora si doveva fare in questo modo:
Per Blackhole:. invoke configure con l'opzione --with-blackhole-storage-engine
Per archieve: invoke configure con l'opzione --with-archive-storage-engine
Per federati: invoke configure con l'opzione --with-federated-storage-engine
So che il post è un po 'vecchio, ma sembra che molte persone stanno avendo problemi con i motori federati.
Quando i binari di MySQL sono installati tramite yum, hai già i plugin (High Availability) di HA. Hai semplicemente bisogno di caricare i plugin all'interno del CLI mysql.
Ecco il processo di base:
mysqld di inizio se non è già stato avviato. Assicurarsi che 'federata' non è in /etc/my.cnf a questo punto.
EX: In questo momento, /etc/my.cnf sarà simile a questa da uno standard yum install ....
[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
Accedere al CLI mysql con la radice (o un altro account con privilegi sufficienti).
Tipo: show engines;
Si dovrebbe vedere nessun motore FEDERATED a questo punto, in questo modo:
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)
Per abilitare il motore federata, digitare quanto segue:
install plugin federated soname 'ha_federated.so'
Ora, quando si 'Mostra i motori' si vedrà il motore federato, ma spento ...
Si sarà simile a questa:
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)
È ora possibile aggiungere in modo sicuro la linea 'federata' al file /etc/my.cnf in questo modo:
[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
Riavvia mysqld (servizio mysqld restart, ecc ...)
Dopo il riavvio, tornare a CLI mysql.
Tipo show engines;
Ora si dovrebbe vedere il motore FEDERATED disponibili e con il supporto di SI.
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)
e si è fatto ... andare avanti e creare tabelle federate ...
In bocca al lupo!
Email me con tutte le domande ... felice di aiuto.
Sulla ML con MySQL 5.5 (corrente) tutto quello che dovevo fare era:
- Copia uno dei file esistenti da / usr / / MySQL / support-files locali / a /etc/my.cnf
- Aggiungi 'federata' (senza virgolette) alla sezione [mysqld] (non è la fine del file my.cnf)
- Riavvia MySQL
Questa potrebbe anche essere utile per coloro che vogliono un metodo automatico per le tabelle di dichiarazione: http://sylnsr.blogspot.com/2012/11/auto-constructing-ddl-for-mysql.html