#ruby-on-rails #database #sqlite
#ruby-on-rails #База данных #sqlite
Вопрос:
Я создал приложение Ruby on Rails и использовал тонкий сервер для его запуска на порту локального хоста 3000, затем я использовал переадресацию портов через мой маршрутизатор, чтобы сделать его доступным в Интернете. Я также использую Sqlite3 для RoR, который отлично работает. Проблема в том, что я не уверен, как сохраняется база данных … например, когда я разрабатываю, запуск изменения в schema.rb приведет к удалению всех данных, сохраненных в базе данных.
Я привык к Apache 2, где в папке MySQL есть файл SQL, который я могу легко создать резервную копию, но я не вижу этого для RoR. Где именно находится база данных RoR MySQL? Кроме того, я не уверен, запущен ли Thin server в разработке или все еще находится в производстве.
Аналогично, у меня есть приложение на C #, которому необходимо подключиться к базе данных RoR, но поскольку я не знаю, где оно расположено, я не могу подключиться к нему. Я предполагаю, что это будет на «localhost», но я не уверен в имени базы данных и других учетных данных.
Для PHP я обычно использую phpmyadmin, который отлично подходит для управления базами данных, а также для создания резервных копий и т.д. Я хотел бы сделать то же самое для RoR, но не могу определить, где расположена база данных SQL.
Я с нетерпением жду любой помощи, которую я мог бы получить по этому вопросу
Спасибо!
Комментарии:
1. Можете ли вы опубликовать свой config / database.yml? Обязательно удалите все строки, начинающиеся с host, username или password, поскольку они являются конфиденциальной информацией.
Ответ №1:
По умолчанию Rails использует базу данных sqlite. Если вы хотите подключить это к другому приложению, я предлагаю переключиться на mysql.
Комментарии:
1. Спасибо за ваш ответ. Если sqlite3 (уже установленный) не работает, я переключусь на mysql.
Ответ №2:
Базы данных sqlite по умолчанию хранятся в ‘db/#{databasename}.sqlite’. Вы должны иметь возможность открывать их через C #, используя любую эквивалентную библиотеку для SQLite. (libsqlite? что-то еще?)
Комментарии:
1. Спасибо за ваш ответ. Я попробую это на C #. Должен ли я запускать приложение RoR с использованием Thin в рабочем режиме и настраивать его как службу Windows для запуска постоянно? Надеюсь, это позволило бы мне подключиться к базе данных sqlite через библиотеки C #.