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

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

环境

我在 IBM 工作,正在尝试为 ubuntu 制作网络启动 (pxe) 原型。这个问题用于识别在使用 juju 部署 https://jujucharms.com/u/openstack-charmers-next/openstack-base/40捆绑包。捆绑包部署了所有必要的服务(openstack、rabbitmq、ceph、mysql(percona)等。不幸的是,开箱即用的 openstack 40 捆绑包在 mysql/percona 部署期间失败。

问题

在为 mysql 设置 percona 时,由于以下原因失败

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

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

如果你使用 juju status 就会看到以下内容:

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"'

答案1

解决

这显示了如何使用仅适用于 mysql (percona) 的独立包来修复它的示例。基本上,必须允许 openstack40 包进入 mysql charm 故障点,然后您必须修复问题。下面是我们在遇到问题后进行的练习,以使只有 mysql(percona) charm 能够工作。只需将 percona.yaml 更改为您使用的 openstack yaml。请注意,对于 ppc64le,您必须获取 openstack 40 yaml 并将其更新为 arch=ppc64el,因为 charm store openstack 40 包仅与 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. 告诉 juju 固定魅力

    juju resolved mysql/0 --retry  --show-log --debug
    
  7. 重新驱动,显示先前的步骤已部署并继续失败的魅力。

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

相关内容