簡體   English   中英

Docker具有持久性的多個MySQL容器

[英]Docker multiple MySQL containers with persistence

我正在嘗試使用Docker Compose設置兩個MySQL容器和一個僅用於數據的容器來保存MySQL數據。

這是docker-compose.yml:

db1:
  image: mysql
  volumes_from:
    - data
  environment:
    - MYSQL_ROOT_PASSWORD=password

db2:
  image: mysql
  volumes_from:
    - data
  environment:
    - MYSQL_ROOT_PASSWORD=password

data:
  image: mysql
  volumes:
    - /var/lib/mysql
  entrypoint: /bin/echo

但是,兩個mysql守護進程都有沖突,因為它們需要一個單獨的數據目錄:

[Note] InnoDB: Check that you do not already have another mysqld process using the same InnoDB data or log files.
[ERROR] InnoDB: Unable to lock ./ibdata1 error: 11

因此,我有兩個問題:

  1. 如何為多個MySQL容器正確實現僅數據容器?
  2. 如何將多個MySQL容器的僅數據容器實現為具有Master-Master復制和負載均衡器的集群?

據我所知,MySQL守護進程會請求對數據文件進行獨占鎖定。 這個鎖會阻止第二個實例旋轉,這可能解釋了你所看到的錯誤。

也許嘗試做一個主奴隸裝備,你有兩個不同的卷,但奴隸(db2)綁定到db1?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM