Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

DB Container - Upgrade MariaDB to 10.2 #947

Closed
mficzel opened this issue Jun 28, 2018 · 6 comments
Closed

DB Container - Upgrade MariaDB to 10.2 #947

mficzel opened this issue Jun 28, 2018 · 6 comments
Milestone

Comments

@mficzel
Copy link

mficzel commented Jun 28, 2018

When using DDEV with recent versions of Neos the mariadb version that comes with ddev is not sufficient since Maria 10.2 is requried.

I suggest to raise the version of the alpine-linux the db-container is based on from 3.7 to 3.8. Alpine 3.8 comes with MariaDB 10.2.15.

Alternatively some documentation on how a default mariadb:10.2 container can be used in ddev could solve the problem aswell.

@mficzel mficzel changed the title DB Container MariaDB 10.2 DB Container - Raise MariaDB version from 10.1 to 10.2 Jun 28, 2018
@rfay rfay added the hibernate label Jun 28, 2018
@rfay
Copy link
Member

rfay commented Jun 28, 2018

Totally agreed, but not sure when we can do it. We definitely want Mariadb 10.2.

BUT... we use bind mounts of the database with this container. So the file actually exists on the host. On Windows, the underlying filesystem is NTFS. mariadb 10.2 (the package) absolutely doesn't work in docker with a bind mount to NTFS. We have an idea to test for a workaround (trying docker volume instead of a bind mount) (#714). It would be lovely if this works out.

Mariadb has loads of weird problems on docker, it's quite odd.

I'm leaving this open because it's a goal, but putting it to hibernate.

@rfay rfay changed the title DB Container - Raise MariaDB version from 10.1 to 10.2 DB Container - Upgrade MariaDB to 10.2 Jun 28, 2018
@mficzel
Copy link
Author

mficzel commented Jul 2, 2018

As a sidenote, this docker-compose.db.yaml worked for me to get mariadb 10.2

version: '3'

services:
  db:
    image: mariadb:10.2
    healthcheck:
      test: "/usr/bin/mysql --user=db --password=db --execute \"SHOW DATABASES;\""
      interval: 3s
      timeout: 1s
      retries: 5

@rfay
Copy link
Member

rfay commented Jul 2, 2018

The official container works except on Windows. So this technique might actually mostly work for you. You might want to just fork the contents of containers/mariadb-local and use mariadb:10.2 as the base.

I don't think some of the startup behaviors of mysql will be handled the way you did this (like installing users and perms) but it's a pretty simple solution!

Oh, I think you have an existing database; it probably wouldn't work with an initial project.

@rfay
Copy link
Member

rfay commented Aug 14, 2018

Set this to actionable for v1.2.0; it may not be achievable, but with db now in docker volume, it may be possible.

@kaystrobach
Copy link

i used the following options to get around the key problem:

.ddev/mysql/no_utf8mb4.cnf

[mysqld]
innodb_file_format = Barracuda
innodb_default_row_format = dynamic

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants