mysql / percona:无法为Percona Server“root”user-ppc64el设置密码

环境

我在IBM工作并尝试为ubuntu构建netboot(pxe)原型。 此问题用于确定使用juju部署https://jujucharms.com/u/openstack-charmers-next/openstack-base/40软件包时遇到的问题。 捆绑包部署了所有必要的服务(openstack,rabbitmq,ceph,mysql(percona)等等。不幸的是,在mysql / percona部署期间,openstack 40捆绑包开箱失败。

问题

为mysql设置percona时,由于失败而失败

无法为Percona Server“root”用户设置密码

上面的消息可以在运行mysql / percona的lxc容器的节点/机器上的mysql日志中看到。

如果你使用juju状态会看到:

mysql: charm: cs:~openstack-charmers-next/trusty/percona-cluster-7 exposed: false service-status: current: error message: 'hook failed: "install"' <===================== since: 14 Oct 2015 16:19:51Z relations: cluster: - mysql units: mysql/0: workload-status: current: error message: 'hook failed: "install"' <===================== since: 14 Oct 2015 16:19:51Z agent-status: current: idle since: 14 Oct 2015 16:19:51Z version: 1.24.6 agent-state: error agent-state-info: 'hook failed: "install"' 

解析度

这显示了如何使用仅用于mysql(percona)的独立包来修复它的示例。 基本上一个必须允许openstack40捆绑到mysql魅力失败的点,然后你必须修复的东西。 下面是我们经历的练习,只有在遇到问题后才能使mysql(percona)魅力发挥作用。 只需将percona.yaml更改为您使用的openstack yaml即可。 请注意,对于ppc64le,您必须获得openstack 40 yaml并将其更新为arch = ppc64el,因为charm store openstack 40 bundle仅与x86相关。

  1. 部署mysql / percona

      juju-deployer -c /root/.juju/bundles/percona.yaml -s 90 -d -v 
  2. 点击mysql密码问题。 上面列出的问题。

  3. 在mysql容器中设置密码

     chroot /var/lib/lxc/juju-machine-0-lxc-1/rootfs/ passwd root 

    —>对于POC密码:xxxxxxxx

      exit 

    注意我们列出了lxc机器juju-machine-0-lxc-1的例子。 它必须是mysql部署的lxc。

  4. 登录到容器

     lxc-console -n juju-machine-0-lxc-1 
  5. 解决问题

     UPDATE mysql.user SET Password=PASSWORD('PASSW0RD') WHERE User='root'; FLUSH PRIVILEGES; exit 

    https://serverfault.com/questions/502840/percona-mysql-unable-to-start-error-the-server-quit-without-updating-pid-file

  6. 告诉ju​​ju固定的魅力

     juju resolved mysql/0 --retry --show-log --debug 
  7. Redrive,显示以前的步骤已部署并从失败的魅力继续。

     juju-deployer -c /root/.juju/bundles/percona.yaml -s 90 -d -v