MySql и shell. Создание базы данных с точкой в имени
Приветствую вас на своем блоге!
Для автоматизации процессов создания сайтов, мне надо было добавить создание и заполнение базы данных. Мои скрипты были уже настроены на использование баз данных имя которых совпадало с именем домена, так как некоторые из них отличаются только лишь корневым доменом.
С автоматизацией создания базы данных и возникла проблема, так как создать базу данных с точкой в названии было не так просто. Переписывать из-за этого скрипты не хотелось, поэтому пришлось искать выход.
Первоначально базу данных создавал при помощи такой строчки в шелле:
Ко мне часто поступают вопросы про хостинг, которым я пользуюсь и поэтому решил указать хостинг в статье https://sprinthost.ru. Вы можете попробовать попользоваться хостингом 30 дней бесплатно. Чтобы понять, как будет работать Ваш сайт на этом хостинге просто перенести свой сайт (в этом поможет поддержка хостинга бесплатно) и и таким образом сможете понять подходит хостинг Вам или нет. На этом хостинге находятся сайты с 20 000 тысяч посещаемость и сайты чувствуют себя отлично. Рекомендую! Да, если делать оплату на 1 год то получаете скидку 25%. И что мне нравится — тех. поддержка всегда помогает в технических вопросах, за что им спасибо. Как Вы понимаете не всегда проходит всё гладко и нет желания, чтобы сайт не был доступен тем самым страдал трафик и доход.#mysql -uroot -pPASS —execute=»create database ${DATABASE}»
Однако, тут возникла проблема с кавычками, никакие комбинации не помогли. Поэтому нашел еще один вариант создания базы данных:
#mysqladmin -uroot -pPASS create ${DATABASE}
В данном случае даже экранировать название базы данных нет необходимости, и так все будет работать.
Это прокатило на системе FreeBSD. На системе Windows такую же базу данных никак создать не удалось, ни через mysqladmin, ни через phpMyAdmin.