VicTHOR
@VicTHOR
(╮°-°)╮┳━━┳ ( ╯°□°)╯ ┻━━┻

Почему нет прав на вторую базу в дампе?

делаю дамп 2-х баз командой
mysqldump --skip-lock-tables --databases project project-test | sed -e 's/DEFINER=[^*]*\*/\*/g' | gzip -c" > project.sql.gz

пользователя указываю с полными правами на эти таблицы, не root.

поднимаю базу локально в докер композ
mariadb:
    image: mariadb:10.4.10
    ports:
      - "${MYSQL_PORT}:3306"
    networks:
      iternal:
    volumes:
      - mariadb:/var/lib/mysql
      - ./docker/mariadb/dump:/docker-entrypoint-initdb.d/
    environment:
      MYSQL_ROOT_PASSWORD: '${MYSQL_ROOT_PASSWORD}'
      MYSQL_DATABASE: '${MYSQL_DATABASE}'
      MYSQL_USER: '${MYSQL_USER}'
      MYSQL_PASSWORD: '${MYSQL_PASSWORD}'
      TZ: 'Europe/Moscow'

Подключаюсь к базе под тем же пользователем - а там у него на вторую базу project-test уже нет прав... Как делать дамп, что-бы права на эту базу для этого пользователя подтянулись? Или в докере что-то не так?
  • Вопрос задан
  • 29 просмотров
Решения вопроса 1
karabanov
@karabanov
Системный администратор
Всё так. Напиши скрипт, который создаёт пользователей и базы и добавляет им GRANT-ов и размести его в директории /docker-entrypoint-initdb.d, там же можешь разместить и дампы, всё применится автоматически.

Посмотри README на Docker HUB раздел "Initializing a fresh instance".
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы