Два сайта с общей БД MySQL

Тема в разделе "Мегафлуд", создана пользователем Bedman, 20 июл 2012.

  1. Bedman

    Bedman Создатель

    Регистр.:
    4 июл 2012
    Сообщения:
    25
    Симпатии:
    6
    Друзья, подскажите мне тоже, по теме:
    Есть интернет-магазин на joomla 2.5 + vertuemart 2.08. Хочу сделать дополнительное оформление для сайта, чтобы отобразите его в Iframe окне приложения Вконтакте.
    Я установил копию сайта в поддоменную папку (www.site.ru/vk/) и сделал для него другой префикс БД MySQL "vk_". В итоге получился аболютно независимый сайт. Теперь нужно как-то сделать чтобы некоторые компоненты нового сайта ссылались на основную БД с префиксом "site_". Как это сделать? Или может есть другое решения для того, чтобы сделать 2 независимых сайта с одним каталогом?
     
  2. darik5

    darik5 Постоялец

    Регистр.:
    14 фев 2012
    Сообщения:
    85
    Симпатии:
    8
    точно не понял что хотите, но можно просто два сайта подключить к одному БД
     
  3. Bedman

    Bedman Создатель

    Регистр.:
    4 июл 2012
    Сообщения:
    25
    Симпатии:
    6
    я так пробовал:
    1. полностью скопировал сайт в поддоменную папку. Результат - css можно править, но любые изменения с позициями модулей и содержанием меню отображаются на обоих сайтах + если на основном домене создавать новые товары то на втором текстовки отображаются, а фотки нет (нужно править ссылки на папку с изображениями)
    2. сделал новый сайт в поддоменной папке и прописал ему для MySQL префикс \"vk_\". Результат - сайт полностью независим и не имеет ни чего общего с основным.

    Как я понял из своих экспериментов, нужно сделать поддоменный сайт с префиксом \"vk_\" и в некоторых компонентах прописать чтобы они обращались к БД с префиксом \"site_\". При этом, в этих-же компонентах изменить относительные ссылки к папкам с изображениями на абсолютные, типа \"http://site.ru/image...\".

    Я сам не программер и описанный выше способ считаю колхозным. Наверно, можно сделать это без дублирования всех компонентов и контента созданием правильного файла ../vk/index.php + vk.css и парой дополнительных обработчиков.
     
  4. poikl

    poikl

    Регистр.:
    7 ноя 2006
    Сообщения:
    164
    Симпатии:
    31
    по пробуй скопировать базу 1 в базу 2 и из базы 2 удали все что не надо оставив только каталог . А потом ручками будеш обновлять ну или сриптом который будет следить за обновлением базы номер 1 в нужном месте
     
  5. latteo

    latteo Эффективное использование PHP, MySQL

    Moderator
    Регистр.:
    28 фев 2008
    Сообщения:
    1.451
    Симпатии:
    1.245
    Слабо относится к теме базы данных, поскольку надо учитывать особенности движка - перенесено в Мегафлуд.
    Ходят слухи, что тема уже обсуждалась на форуме и стоит воспользоваться поиском https://www.nulled.cc/search/
     
  6. Bedman

    Bedman Создатель

    Регистр.:
    4 июл 2012
    Сообщения:
    25
    Симпатии:
    6
    Искал, есть темы про репликацию БД, но я не хочу делать репликацию, я хочу сделать 2 независимых оформления сайта с независимым расположением модулей.
     
  7. Bedman

    Bedman Создатель

    Регистр.:
    4 июл 2012
    Сообщения:
    25
    Симпатии:
    6
    Спасибо за совет, но я вообще не догнал кроме того, что надо скопировать.
    База данных одна. в ней есть одинаковые таблицы с разными с разными префиксами например site_bd_vertyemart и vk_bd_vertyemart. Я не знаю как сделать чтобы на втором сайте компонент vertuemart обращался не к таблице vk_bd_vertyemart (её вообще можно удалить), а брал данные из основной таблицы site_bd_vertyemart.
     
  8. dazed

    dazed

    Регистр.:
    31 мар 2007
    Сообщения:
    208
    Симпатии:
    55
    Сделайте пользователя и дав ему привилегии к обращению сразу на две базы. Там где нужно обращаться к первой базе перед запросами напишите:
    Код:
    mysql_select_db('basa1');
    в тех местах где запросы из второй базы соответственно:
    Код:
    mysql_select_db('basa2');
     
  9. poikl

    poikl

    Регистр.:
    7 ноя 2006
    Сообщения:
    164
    Симпатии:
    31
    думаю так не выйдет так как это обычно в config.php все а не в каждой функции
     
  10. dazed

    dazed

    Регистр.:
    31 мар 2007
    Сообщения:
    208
    Симпатии:
    55
    Вы писали вот что:
    Так как по мне самое оптимальное это поступить как я описывал - переключением на другую базу, в тех некоторых исключениях, разве сильно много запросов к базе данных?
    А вообще нужно было это заранее продумывать, или же сейчас таблицы перенести в одну базу.