Heim >Datenbank >MySQL-Tutorial >mysql安装innodb插件_MySQL

mysql安装innodb插件_MySQL

WBOY
WBOYOriginal
2016-06-01 13:45:121078Durchsuche

bitsCN.com

可以用 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';    //提示打不开文件,没有权限
ERROR 1126 (HY000): Can't open shared library '/usr/local/mysql/lib/mysql/plugin/ha_innodb.so' (errno: 13 cannot restore segment prot after reloc: Permission denied)

上面报没有权限错误,搞得我很郁闷,解决办法如下:
root@ubuntu:/usr/local/mysql# find . -type d -print |grep -i plugin   //查看一下插件目录对不对
./lib/mysql/plugin
root@ubuntu:/usr/local/mysql# chcon -t texrel_shlib_t /usr/local/mysql/lib/mysql/plugin/ha_innodb.so
chcon: 部分关联无法应用于文件“/usr/local/mysql/lib/mysql/plugin/ha_innodb.so”

用chcon也报错,我查一下是因为我没有安装selinux
root@ubuntu:/usr/local/mysql# whereis selinux
selinux:
selinux我根本没有安装,如果个人用,这个也不需要,没办法装一下,装完后chcon就不报错了。

安装以下几个
mysql> install plugin INNODB soname "ha_innodb.so";
mysql> install plugin INNODB_TRX soname "ha_innodb.so";
mysql> install plugin INNODB_LOCKS soname "ha_innodb.so";
mysql> install plugin INNODB_LOCK_WAITS soname "ha_innodb.so";
mysql> install plugin INNODB_CMP soname "ha_innodb.so";
mysql> install plugin INNODB_CMP_RESET soname "ha_innodb.so";
mysql> install plugin INNODB_CMPMEM soname "ha_innodb.so";
mysql> install plugin INNODB_CMPMEM_RESET soname "ha_innodb.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)

作者 “huoxiujian”

bitsCN.com
Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn