但是,我被困在MysqL部分.每次我尝试运行预制的MysqL Docker容器(MysqL,tutum / MysqL和sameersbn / MysqL),如下所述,我得到以下输出.
脚步
> docker.io pull tutum / MysqL:latest
> docker.io运行-it tutum / MysqL bash
>一旦附加到新容器运行“/run.sh”(根据tutum / MysqL dockerfile)
>此时,“等待确认MysqL服务启动”消息不断重复.
>此时,如果我取消“/run.sh”命令并自己启动MysqL,我会收到以下错误消息.
输出:
root@1bbeb34f3491:/# MysqLd
140730 4:49:04 [Warning] Using unique option prefix key_buffer instead of key_buffer_size is deprecated and will be removed in a future release. Please use the full name instead.
140730 4:49:04 [Warning] Using unique option prefix myisam-recover instead of myisam-recover-options is deprecated and will be removed in a future release. Please use the full name instead.
140730 4:49:04 [Note] Plugin ‘FEDERATED’ is disabled.
MysqLd: Table ‘MysqL.plugin’ doesn’t exist
140730 4:49:04 [ERROR] Can’t open the MysqL.plugin table. Please run MysqL_upgrade to create it.
140730 4:49:04 InnoDB: The InnoDB memory heap is disabled
140730 4:49:04 InnoDB: Mutexes and rw_locks use GCC atomic builtins
140730 4:49:04 InnoDB: Compressed tables use zlib 1.2.8
140730 4:49:04 InnoDB: Using Linux native AIO
140730 4:49:04 InnoDB: Initializing buffer pool,size = 128.0M
140730 4:49:04 InnoDB: Completed initialization of buffer pool
140730 4:49:04 InnoDB: highest supported file format is Barracuda.
140730 4:49:04 InnoDB: Waiting for the background threads to start
140730 4:49:05 InnoDB: 5.5.37 started; log sequence number 1595675
140730 4:49:05 [Note] Server hostname (bind-address): ‘0.0.0.0’; port: 3306
140730 4:49:05 [Note] – ‘0.0.0.0’ resolves to ‘0.0.0.0’;
140730 4:49:05 [Note] Server socket created on IP: ‘0.0.0.0’.
140730 4:49:05 [ERROR] Can’t start server : Bind on unix socket: Permission denied
140730 4:49:05 [ERROR] Do you already have another MysqLd server running on socket: /var/run/MysqLd/MysqLd.sock ?
140730 4:49:05 [ERROR] Aborting
140730 4:49:05 InnoDB: Starting shutdown…
140730 4:49:06 InnoDB: Shutdown completed; log sequence number 1595675
140730 4:49:06 [Note] MysqLd: Shutdown complete
>“请运行MysqL_upgrade来创建它”=>运行MysqL_upgrade命令输出
root@1bbeb34f3491:/# MysqL_upgrade
Looking for ‘MysqLcheck’ as: MysqLcheck
FATAL ERROR: Upgrade Failed
>“你已经在socket上运行了另一个MysqLd服务器”=>不.运行服务MysqL stop什么都不做,运行ps不显示MysqLd.运行ls -a / var / run / MysqLd /表明套接字文件不存在.
无论我尝试哪个MysqL容器,最终当我启动MysqL时,出现了相同的错误消息.这几乎可以肯定意味着我的设置出了问题让我感到困惑,因为我认为没有暴露端口或持久存储的Docker容器会与系统中的Docker隔离?
我还尝试使用-d标志运行MysqL容器,然后运行链接到它的新的ubuntu 14.04容器(docker.io run -it -link MysqL:MysqL ubuntu:14.04 bash).在Ubuntu容器上,我通过apt-get安装了MysqL-client,并尝试连接到MysqL容器,但这也不起作用.
我的主机系统运行的是Ubuntu 14.04,Docker是通过apt-get安装的,版本是0.9.1.
我不太清楚在这个解释中应该放什么,因为这个问题对我来说似乎很奇怪.如果有什么我错过了请问,我会为你添加.
谢谢,
JamesStewy