mysql安装innodb插件

来源:互联网 发布:淘宝客服回复快捷短语 编辑:程序博客网 时间:2024/06/06 16:33
 

可以用 show engines;或者show plugins;来查看
mysql> show plugins;
+------------+--------+----------------+---------+---------+
| Name       | Status | Type           | Library | License |
+------------+--------+----------------+---------+---------+
| binlog     | ACTIVE | STORAGE ENGINE | NULL    | GPL     |
| CSV        | ACTIVE | STORAGE ENGINE | NULL    | GPL     |
| MEMORY     | ACTIVE | STORAGE ENGINE | NULL    | GPL     |
| MRG_MYISAM | ACTIVE | STORAGE ENGINE | NULL    | GPL     |
| MyISAM     | ACTIVE | STORAGE ENGINE | NULL    | GPL     |
+------------+--------+----------------+---------+---------+
5 rows in set (0.00 sec)
方法一:
在configure的时候加上–with-plugins=innobase (或all) 如果要添多个插件,用半角逗号隔开

方法二:
如果mysql已经编译好了,又不想重新编译,可以安装插件,innodb就是一个插件,安装好mysql后也是可以添加的。

1,查看一下,mysql配置是不是支持动态添加插件
mysql> show variables like "have_%";
+----------------------+-------+
| Variable_name        | Value |
+----------------------+-------+
| have_compress        | YES   |
| have_crypt           | YES   |
| have_csv             | YES   |
| have_dynamic_loading | YES   |    //在这里是YES表示是支持的

如果是no呢,就不太好办,因为have_dynamic_loading是只读变量,
mysql> set have_dynamic_loading=1;
ERROR 1238 (HY000): Variable ‘have_dynamic_loading’ is a read only variable
不过一般情况下都是YES,

2,添加插件

mysql> INSTALL PLUGIN INNODB SONAME 'ha_innodb.so';    //提示打不开文件,没有权限

找到安装目录下的/lib/mysql/plugin目录,运行如下命令:

@ubuntu:/usr/local/mysql# chcon -t texrel_shlib_t /usr/local/mysql/lib/mysql/plugin/ha_innodb.so

其实用ll命令看一下,就可以发现ha_innodb.so是ha_innodb.so.0.0.0的链接,实在不行可以这样执行:

install plugin INNODB soname "ha_innodb.so.0.0.0";
安装以下几个
mysql> install plugin INNODB soname "ha_innodb_plugin.so.0.0.0";
mysql> install plugin INNODB_TRX soname "ha_innodb_plugin.so.0.0.0";
mysql> install plugin INNODB_LOCKS soname "ha_innodb_plugin.so.0.0.0";
mysql> install plugin INNODB_LOCK_WAITS soname "ha_innodb_plugin.so.0.0.0";
mysql> install plugin INNODB_CMP soname "ha_innodb_plugin.so.0.0.0";
mysql> install plugin INNODB_CMP_RESET soname "ha_innodb_plugin.so.0.0.0";
mysql> install plugin INNODB_CMPMEM soname "ha_innodb_plugin.so.0.0.0";
mysql> install plugin INNODB_CMPMEM_RESET soname "ha_innodb_plugin.so.0.0.0";

以上几个命令我看有的达人引用的包是ha_innodb.so,但我执行了会说找不到INNODB_TRX ,我想会不会是这个包里没有,于是改用ha_innodb_plugin.so这个包就可以了。

安装好后,在用 show engines;或者show plugins;来查看

mysql> show plugins;
+---------------------+--------+--------------------+---------+---------+
| Name                | Status | Type               | Library | License |
+---------------------+--------+--------------------+---------+---------+
| binlog              | ACTIVE | STORAGE ENGINE     | NULL    | GPL     |
| CSV                 | ACTIVE | STORAGE ENGINE     | NULL    | GPL     |
| MEMORY              | ACTIVE | STORAGE ENGINE     | NULL    | GPL     |
| InnoDB              | ACTIVE | STORAGE ENGINE     | NULL    | GPL     |
| INNODB_TRX          | ACTIVE | INFORMATION SCHEMA | NULL    | GPL     |
| INNODB_LOCKS        | ACTIVE | INFORMATION SCHEMA | NULL    | GPL     |
| INNODB_LOCK_WAITS   | ACTIVE | INFORMATION SCHEMA | NULL    | GPL     |
| INNODB_CMP          | ACTIVE | INFORMATION SCHEMA | NULL    | GPL     |
| INNODB_CMP_RESET    | ACTIVE | INFORMATION SCHEMA | NULL    | GPL     |
| INNODB_CMPMEM       | ACTIVE | INFORMATION SCHEMA | NULL    | GPL     |
| INNODB_CMPMEM_RESET | ACTIVE | INFORMATION SCHEMA | NULL    | GPL     |
| MRG_MYISAM          | ACTIVE | STORAGE ENGINE     | NULL    | GPL     |
| MyISAM              | ACTIVE | STORAGE ENGINE     | NULL    | GPL     |
+---------------------+--------+--------------------+---------+---------+
13 rows in set (0.00 sec