Как правильно сделать структуру базы данных?
Вы хотите сказать что mariadb не поддерживает связь между таблицами "Один-ко-многим"?
Давайте посмотрим как организовать связь между таблицей "Wine" и таблицей "Grape". В каждой из этих таблиц есть поле с уникальным идентификатором "wine_id" и "grape_id". Создадим таблицу "grapes_to_wine" в которой будем хранить "wine_id" и "grape_id". Связываем таблицы по схеме: таблица "Wine" связана с таблицей "grapes_to_wine" по полю "wine_id" отношением "один ко многим" и  таблица "Grape" связана с таблицей "grapes_to_wine" по полю "grape_id" отношением "один ко многим". В итоге получаем структуру при которой к каждому элементу таблицы  "Wine" мы можем соотнести любое количество элементов таблицы "Grape".
Как то так.
Обычная задача, делаем промежуточную таблицу grapes_for_wine (wine_id, grape_id).