安装MySQL后如何添加联合引擎
-
16-10-2019 - |
题
我有mysql 5.5.18
并在展示引擎上:
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 | +--------------------+---------+------------------------------------------------------------+--------------+------+------------+
如您所见,联合引擎不是其中之一。我需要启用它!为什么列表中缺少黑洞,联合和档案引擎的原因有什么想法吗?我该怎么 添加/启用 他们?
编辑
我有Ubuntu 11.10并从PPA安装MySQL ...我已将以下内容添加到/etc/apt/sources.list.list
deb http://ppa.launchpad.net/nathan-renniewaldock/ppa/ubuntu oneiric main deb-src http://ppa.launchpad.net/nathan-renniewaldock/ppa/ubuntu oneiric main
谢谢你的帮助
解决方案
我设法找到了一个解决方案...
已经有一个插件
/usr/lib/mysql/plugin/ha_federated.so
我只是登录MySQL作为root并运行以下查询
mysql>install plugin federated soname 'ha_federated.so';
然后我添加了联合到我的.cnf并重新启动mysql
其他提示
如果默认安装/二进制安装
我认为 BLACKHOLE , ARCHIVE
安装MySQL Server时默认安装并启用。
但是 FEDERATED
默认情况下不启用。
您可以手动启用它已编辑您的my.cnf file.edit my.cnf,在[mySQLD]部分中,添加行:
federated
现在重新启动MySQL Server。
用于添加 Archive
转到链接 http://timanovsky.wordpress.com/2010/10/09/enabling-Archive-Archive-storage-engine-engine-in-ius-mysql-5-1/
如果您已经从源头安装,那么您应该这样做:
对于黑洞: 调用配置 --with-blackhole-storage-engine
选项。
对于拱门: 调用配置 --with-archive-storage-engine
选项
用于联邦: 调用配置 --with-federated-storage-engine
选项
我知道这个帖子有点古老,但是似乎许多人在联合发动机上有问题。
当通过百胜安装MySQL二进制文件时,您已经有了HA(高可用性)插件。您只需要将插件加载到MySQL CLI中即可。
这是基本过程:
如果尚未启动MySQLD。确保“联合”此时不在/etc/my.cnf中。
例如:目前, /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
[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
使用root(或具有足够特权的另一个帐户)登录MySQL CLI。
类型: show engines;
此时,您应该看不到联合引擎:
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'
现在,当您“显示引擎”时,您会看到联合发动机,但关闭...
看起来像这样:
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)
现在,您可以安全地将“联合”行添加到/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(Service MySQLD重新启动等...)
重新启动后,回到MySQL CLI。
类型 show engines;
现在,您应该看到可用的联合引擎,并支持为“是”。
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)
而且您已经完成了...前进并创建联邦表...
祝你好运!
给我发电子邮件,任何问题...乐于提供帮助。
在ML上,我需要做的MySQL 5.5(当前)是:
- 从/usr/local/mysql/support-files/to/etc/my.cnf复制现有文件之一
- 在[mySQLD]部分(不是my.cnf文件的末尾)添加“联合”(无引号)
- 重新启动mysql
对于那些想要一种自动化方式来声明表的人来说,这也可能很有用: http://sylnsr.blogspot.com/2012/11/auto-constructing-ddl-for-mysql.html