MySQL - Разделение таблиц БД на разные тома EBS в экземпляре Amazon EC2 - PullRequest
0 голосов
/ 12 марта 2012

У меня есть экземпляр Amazon EC2 Server, и он подключен к пяти томам EBS, скажем,

  1. ebsvol1
  2. ebsvol2
  3. ebsvol3
  4. ebsvol4
  5. ebsvol5

при подготовке этого сервера мне нужно установить MySQL Server и настроить мою базу данных. Здесь мне нужно смонтировать несколько таблиц на один том EBS (скажем, ebsvol1) и другие таблицы на другой том (скажем, ebsvol2).

Я новичок в этой среде Амазонки. Пожалуйста, объясните мне, как действовать.

1 Ответ

4 голосов
/ 24 мая 2012

Этот ответ относится к экземплярам на основе LINUX.

Начните с этой статьи на Amazon , в которой объясняется, как настроить MySQL для работы на томе EBS.Это не является строго обязательным - следующие шаги должны нормально работать со стандартной установкой MySQL.

Вам потребуется создать новую схему для каждого тома EBS / группы таблиц.Я не верю, что вы можете хранить свои таблицы в одной схеме, но распределите их по нескольким томам EBS.Каждая пустая схема представлена ​​папкой в ​​ / var / lib / mysql / , содержащей один файл с именем db.opt .

Чтобы переместить схему в свою собственнуюТом EBS требует следующих шагов (используя схему my_schema ):

  • подключите том EBS, если он еще не подключен (при условии, что он подключен как / ebsvol1 );убедитесь, что том указан в / etc / fstab , чтобы он автоматически монтировался при перезагрузке

  • для изменения разрешений смонтированной папки в соответствии с текущей папкой схемы

   chmod 700 /ebsvol1
   chown mysql /ebsvol1
   chgrp mysql /ebsvol1
  • скопировать файл db.opt из папки схемы на новый том (если вы уже создали таблицыв схеме их тоже нужно скопировать)
   cp /var/lib/mysql/my_schema/db.opt /ebsvol1/
   chmod 660 /ebsvol1/db.opt
   chown mysql /ebsvol1/db.opt
   chgrp mysql /ebsvol1/db.opt
  • заменить исходную папку схемы символической ссылкой на том EBS
   cd /var/lib/mysql
   rm -fr my_schema
   ln -s /ebsvol1 my_schema

Если ваша операционная система использует AppArmor, вам может потребоваться включить / ebsvol1 в список папок, в которые MySQL разрешено писать.См. статью здесь для получения подробной информации.

Теперь все таблицы, созданные в my_schema , будут храниться в /ebsvol1.

.
...