Как подключить mongodb. Atlas к shopker на хостинге?
-
На хостинге приложение установилось обычным способом + mongo.db хостинга. Но как подключить бесплатную cloud.mongo.db?
Что нужно изменить в настройках?
doctrine_mongodb.yaml
doctrine_mongodb: auto_generate_proxy_classes: '%kernel.debug%' auto_generate_hydrator_classes: '%kernel.debug%' connections: default: #server: 'mongodb://%mongodb_user%:%mongodb_password%@%mongodb_server%:%mongodb_port%' server: 'mongodb://%mongodb_server%:%mongodb_port%' #server: '%mongodb_uri%' options: {} default_database: '%mongodb_database%' document_managers: default: auto_mapping: true mappings: App: is_bundle: false type: annotation dir: '%kernel.project_dir%/src/App/Document' prefix: App\Document\ alias: App AppMainBundle: is_bundle: true type: annotation dir: 'Document' prefix: App\MainBundle\Document\ alias: AppMainBundle ImportExportBundle: is_bundle: true type: annotation dir: 'Document' prefix: Andchir\ImportExportBundle\Document\ alias: ImportExportBundle
В mongodb atlas создан claster c бд. В connection есть link
mongodb+srv://user:<password>@db1-qtnpj.azure.mongodb.net/test?retryWrites=true&w=majority
но если этот link добавить в конфиг с данными user и pass, то mongo не подключается.
Также не совсем ясно, как настроить accsess mongocloud так, чтобы сайт был виден всем пользователям, т.к. там есть привязка к ip, а он у меня динамический.
-
Для URI вот пример есть:
server: '%mongodb_uri%'
Эту строку нужно раскомментировать (убрать #), а остальные варианты закомментировать или убрать. Саму URI подключения нужно вставить в админке в настройках или в файле /config/settings.yaml (mongodb_uri). После редактирования любых конфигов нужно очистить кэш - удалить папку "/var/cache/prod" или нажать кнопку в админке.
Если меняете базу данных после того как сайт установили, то нужно перенести данные из старой БД в новую или заново установить приложение. Если нужно заново установить, то нужно просто очистить содержимое файла /config/settings.yaml (сделать пустым) и очистить кэш. Далее в процессе установки вставить новую URI подключения БД.
Также не совсем ясно, как настроить accsess mongocloud так, чтобы сайт был виден всем пользователям, т.к. там есть привязка к ip, а он у меня динамический.
Не понял что такое "accsess mongocloud".
Использование удаленной БД (на другом сервере) не рекомендуется, т.к. сайт будет значительно медленнее работать.