首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法在群集上安装mysql

问无法在群集上安装mysql
EN

Stack Overflow用户
提问于 2014-11-14 07:33:49
回答 1查看 625关注 0票数 1

我几乎没有看到关于这个问题的话题,但没有一个能解决我的问题。

所以。平台为CentOS 6.6。我已经安装了Percona集群、它们的mysql-lib和它们的开发包。我也有红宝石2.0.0和红宝石2.4.3。现在,我正在尝试安装mysql。我得到的是:

构建本机扩展。这需要一段时间..。错误:安装mysql时出错:错误:无法构建创业板本机扩展。 /opt/sensu/embedded/bin/ruby -r ./siteconf20141114-16854-1fyrg9v.rb extconf.rb检查mysql_ssl_set()* extconf.rb失败*无法创建Makefile,原因可能是缺少必要的库和/或标题。有关更多细节,请查看mkmf.log文件。您可能需要配置选项。 提供配置选项:--with-opt-dir --without include=${opt-dir}/include--without lib--without lib=${opt-dir}/lib-with-make-prog-include Provided =.-ruby=/opt/sensu/embedded/bin/ruby-with-mysql-config- /opt/sensu/embedded/lib/ruby/2.0.0/mkmf.rb:534:in try_link' from /opt/sensu/embedded/lib/ruby/2.0.0/mkmf.rb:720:intry_func‘from /opt/sensu/embedded/lib/ruby/2.0.0/mkmf.rb:534:intry_link' from /opt/sensu/embedded/lib/ruby/2.0.0/mkmf.rb:720:intry_func’bin/lib/ruby/2.0.0从/opt/sensu/embedded/lib/ruby/2.0.0/mkmf.rb:340:in block (2 levels) in postpone' from /opt/sensu/embedded/lib/ruby/2.0.0/mkmf.rb:310:in打开到/opt/sensu/embedded/lib/ruby/2.0.0/mkmf.rb:340:in block in postpone' from /opt/sensu/embedded/lib/ruby/2.0.0/mkmf.rb:310:in open‘/opt/sensu/embedded/lib/ruby/2.0.0/mkmf.rb:336:in postpone' from /opt/sensu/embedded/lib/ruby/2.0.0/mkmf.rb:894:in checking_for’中的/mkmf.rb:1004:in block in have_func' from /opt/sensu/embedded/lib/ruby/2.0.0/mkmf.rb:895:in块来自/opt/sensu/embedded/lib/ruby/2.0.0/mkmf.rb:1003:in have_func' from extconf.rb:45:in‘ extconf失败,退出代码1 Gem文件将继续安装在/opt/sensu/embedded/lib/ruby/gems/2.0.0/gems/mysql-2.9.1中以供检查。登录到/opt/sensu/embedded/lib/ruby/gems/2.0.0/extensions/x86_64-linux/2.0.0/mysql-2.9.1/gem_make.out的结果

我在网上找到的任何一个描述的解决方案都帮不了我,所以,也许有人在Percona集群和ruby-2.0.0以及gem mysql-2.9.1上也有类似的问题。

EN

回答 1

Stack Overflow用户

发布于 2014-11-14 08:45:31

看起来您需要使用SSL的Ruby的开发库:

尝试以下每一种方法:

代码语言:javascript
复制
yum install gcc

yum install mysql mysql-devel mysql-server

yum install openssl openssl-devel  

yum install ruby-devel

然后尝试安装更新的mysql2 gem:

代码语言:javascript
复制
 gem install mysql2 --version '>=0.3.17'

Sensu期望SSL,所以拥有它是很好的。Sensu文档说:“没有SSL就可以使用Sensu,但是它是非常不受欢迎的。下面的说明使用一个工具来生成自签名的OpenSSL证书”。了解如何在此处启用SSL:

代码语言:javascript
复制
http://sensuapp.org/docs/latest/certificates#documentation

如果需要SSL,则可能希望确保数据库启用SSL:

代码语言:javascript
复制
> show variables like '%ssl%';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| have_openssl  | YES   |
| have_ssl      | YES   |
...

您在评论中写道,您无法安装mysql-devel和mysql-server,因为它们将与percona冲突。我的猜测是,错误是较旧的mysql gem和/或对SSL的需要。

如果您使用的是rvm,它也可能导致这类故障。您可能需要尝试ruby-install并安装当前的红宝石。这可能会带来所需的依赖关系。如果需要,可以在自定义目录中使用ruby-install,如下所示:

代码语言:javascript
复制
 $ ruby-install ruby 2.1.5 --install-dir ~/foo/bar/

如果您使用的是sudo gem install,那么它也会给本机宝石带来故障。您可能希望尝试成为root用户,并使用实际的root环境和root ruby版本,并再次检查ruby版本是否与您所期望的一样,如下所示:

代码语言:javascript
复制
 $ sudo su - 
 # which ruby
 # ruby --version
 # gem install mysql2 --version '>=0.3.17'
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26925066

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档