BG Development


Страници: (3) 1 [2] 3   ( Първото ново мнение ) Reply to this topicStart new topicStart Poll

> Затворена дискусия за миграцията на форума
thrawn
Публикувано на: 16-03-2018, 08:29
Quote Post



Име:
Група: Потребител
Ранг: Почетен член

Мнения: 1685
Регистриран на: 17.01.17



Въпроса си опира до това какво се цели.

При всяко положение, и в двата варианта трябва да се осигури достъп до базата данни на текущия форум и до процедурата за login/out.

Според мен, най-удачния вариант е да се инсталира форумът на някой безплатен хост (може дори да му вдигнем един VPS в амазон, нали дават безплатни за година) и да си направим тестови акаунти там, за да го напълним с някакво реално, тестово съдържание.
Така всеки който желае ще може да получи дъмп на базата данни, без да се компроментира по никакъв начин сигурността тук. Целта е, всеки който има желание да се пробва или да го мигрира към друга платформа или да създаде някакво апи.

Накрая ръководството ще си прецени кое му допада (и дали изобщо нещо му допада) и ще прехвърли избраната реализация на официалния хост с реалните данни.
PMEmail Poster
Top
dvader
Публикувано на: 16-03-2018, 09:02
Quote Post


Group Icon
Име:
Група: VIP
Ранг: Почетен член

Мнения: 4066
Регистриран на: 12.07.05



Достъп до цялата база не е нужен. По някое време ще трябва тестов набор данни за да се провери дали всичко се прехвърля правилно. Това, което ще трябва е достъп до сорса на форума, за да се види някои от видовете данни в какъв вид се пазят и да се мисли как да се конвертират.
Ако ще се разчита всеки сам да си вдига някъде копие на форума плюс да слага новият и да си играе на миграция, съмнявам се, че ще има много желаещи.

Аз нещата ги виждам така:
1) Избира се новият форум
2) Инсталира се на някой хостинг, може дори да са side-by-side със сегашния
3) Прави се орязано копие на текущата база
4) Дава се пълен достъп до новата база
5) Правим магии
6) Имаме SQL и/или скрипт който прави миграцията.
7) Дропва се новата база и се пускат скриптовете да преместят данните от старата.
8) Ръчен fine-tune

Скриптовете евентуално ще са два - един, който мести данните, един който конвертира данните, in-place в новата, ако се наложи.
Най-нужни ще са схемите на двете бази, старата я има, новата ще зависи от това, на кой engine минаваме.

Желателно при миграцията базите да са на едно място, за да не се налага export/import на данните през междинни файлове ами директен трансфер от таблица в таблица.

PS.
Thrawn и Vader - Империята рулира icon_smile.gif

Това мнение е било редактирано от dvader на 16-03-2018, 09:04


--------------------
I find your lack of faith disturbing
PM
Top
thrawn
Публикувано на: 16-03-2018, 09:17
Quote Post



Име:
Група: Потребител
Ранг: Почетен член

Мнения: 1685
Регистриран на: 17.01.17



Е как ще мигрираш данни от една таблица (тоя форум) в друга таблица (другия форум) без достъп до данните?

Достъпът до базата данни е задължителен, защото задачата е реално тях да прехвърлиш. А това как форумът ги визуализира е без значение. Важното е, как ще ги визуализира новия форум.

Помощната информация за вход/изход трябва за да се намери решение на проблемът с различното хеширане на паролите. Друго не се сещам да трябва от текущата имплементация. Разбирасе, винаги може да изникне нещо де.

Мисълта ми беше, не ние да правим инсталации, а някой от ръководството да направи чиста инсталация на текущия форум. На друг хост, за да не мажем по тоя (а и да се сведат рисковете за сигурността до минимум). Така отпада и рискът от изтичане на данни от текущите акаунти.

След като получим дъмп на базата данни от тестовия форум, всеки ще може да си го импортне локално и да почва да твори. Все пак импортирането е един ред в конзола. Никой няма да го заболи да го напише.
Иначе, ако някой желае, не виждам проблем да си инсталира ipb ако тестовия хост не го удоволетворавя по някаква причина.

---
Те повечето не знаят кой е thrawn icon_smile.gif

Това мнение е било редактирано от thrawn на 16-03-2018, 09:20
PMEmail Poster
Top
dvader
Публикувано на: 16-03-2018, 11:04
Quote Post


Group Icon
Име:
Група: VIP
Ранг: Почетен член

Мнения: 4066
Регистриран на: 12.07.05



QUOTE (thrawn @ 16-03-2018, 09:17)
Е как ще мигрираш данни от една таблица (тоя форум) в друга таблица (другия форум) без достъп до данните?

Няма да ги мигрирам аз.
Ще направя само скрипта за мигриране, после админите да си го рънват.
За да направя скрипта ще е нужен само тестов набор данни, с който да се отработят нещата.
Номера е, че може да се наложи конвертиране на данните (примерно датите), което налага достъп до сорсовете на старият и новият форум.

Дали ще е нужен отделен хост или не зависи от това дали базата позволява контрол на достъпа на ниво таблица. Ако да, тогава всичко може да се прави на един хост, като достъпа до старите реални таблици е затворен.

Ако импортирането беше еди ред в конзола отдавна да е направено и сега нямаше да водим този разговор.


--------------------
I find your lack of faith disturbing
PM
Top
thrawn
Публикувано на: 16-03-2018, 11:30
Quote Post



Име:
Група: Потребител
Ранг: Почетен член

Мнения: 1685
Регистриран на: 17.01.17



Е именно де. За да се направи скриптът трябва да разполагаш с данни с които да работиш. При това не само DDL а някакви реални данни. Затова смятам, че е най-добре да се ползва дъмп на базата данни на отделната инсталация. Така ще работиш с истински данни, и никой няма да се притеснява от изтичане на хешове или нещо друго.

Отделния хост просто решава всички проблеми със сигурността които някой би имал.

Иначе, що се отнася до трансферът на данни - дъмпът на данните от тестовия хост е
CODE
mysqldump -opt --user=USERNAME --password=PASSWORD DATABASE_NAME

Като това може да се навре в php скрипт и всеки да си сваля дъмп когато му потрябва.

А самото импортиране локално е
CODE
mysql --username=USERNAME -p DATABASE_NAME < dump_file


Така всеки ще може да си работи по предпочитания от него вариант.

Това мнение е било редактирано от DarkOne на 16-03-2018, 14:26
PMEmail Poster
Top
dvader
Публикувано на: 16-03-2018, 11:42
Quote Post


Group Icon
Име:
Група: VIP
Ранг: Почетен член

Мнения: 4066
Регистриран на: 12.07.05



QUOTE (thrawn @ 16-03-2018, 11:30)
За да се направи скриптът трябва да разполагаш с данни с който да работиш. При това не само DDL а някакви реални данни.

Така де, чети внимателно - не съм казал, че не ти трябват данни, а че не ти трябват всичките данни. Иначе наистина е по-добре/по-лесно да се работи с пълната база, просто това е въпрос на сигурност - need to know basis icon_smile.gif

Не на последно място, подозирам че целият дъмп ще е доста голям.
Освен това, защо да се прави дъмп - не може ли да се вземе направо db файла?


--------------------
I find your lack of faith disturbing
PM
Top
thrawn
Публикувано на: 16-03-2018, 12:01
Quote Post



Име:
Група: Потребител
Ранг: Почетен член

Мнения: 1685
Регистриран на: 17.01.17



Какво разбираш под "всички" данни?

Трябва ти достъп до всички данни които искаш да мигрираш. Можеш да не прехвърляш да речем паролите, но трябва да измислиш начин акаунтите да продължат да си функционират в новия форум. Така че, трябва да имаш достъп до всички данни необходими на форумът за да функционира.

Относно дъповете - базата данни на този форум може и да е голяма. Но така или иначе, ще се работи (поне това предлагам) с базата данни на тестовия форум. А неговата база данни ще е малка - няколко форума, няколко потребителя с по няколко теми и мнения. Трудно ще го докараме до мегабайт icon_smile.gif
Иначе, да резонно е да се прехвърлят директно файловете, но това води до други проблеми: най-малкия е, че mysql не пише в един файл - всяка таблица ползва по два или три файла. А форумът има доста таблици.
PMEmail Poster
Top
dvader
Публикувано на: 16-03-2018, 13:24
Quote Post


Group Icon
Име:
Група: VIP
Ранг: Почетен член

Мнения: 4066
Регистриран на: 12.07.05



QUOTE (thrawn @ 16-03-2018, 12:01)
Какво разбираш под "всички" данни?

Мислех, че е очевидно.
Сравни
SELECT * FROM users;
и
SELECT * FROM users LIMIT 10;

за да се настрои скрипта ти трябват по 10 записа от всяка таблица. Разбира се, опростявам малко нещата, но идеята би трябвало да ти е ясна.
Естествено, че 10 реда трябва да са правилно свързани но най-критичните и тайните са таблицата с усерите и таблицата с личните съобщения.

Всичко опира до това кое е по-лесно - да се ореже сегашната база или да се инсталира копие на форума някъде и да се напълни с тестови данни.


--------------------
I find your lack of faith disturbing
PM
Top
thrawn
Публикувано на: 16-03-2018, 13:54
Quote Post



Име:
Група: Потребител
Ранг: Почетен член

Мнения: 1685
Регистриран на: 17.01.17



А, в такъв смисъл - да. Няколко записа са достатъчни.

Проблемът обаче е, че няма как да направиш дъмп на базата данни само с по 10-тина записа. Или вадиш всичко или само ДДЛ. А инсталацията на форумът в края на краищата се свежда само до копиране на файловете от единия сървър на другия (и попълване на съответните параметри в конфигурацията му).
PMEmail Poster
Top
dvader
Публикувано на: 16-03-2018, 14:46
Quote Post


Group Icon
Име:
Група: VIP
Ранг: Почетен член

Мнения: 4066
Регистриран на: 12.07.05



Аз нямам нито базата, нито сорса на форума и не знам дали ще ни бъдат дадени, затова планирам всичката процедура с оглед, че ще имаме ограничен достъп само до това, което реално потрябва. Например като ми потрябват 10 усера пращам готово куери на админа, той ми праща резултата, като ми потрябват 10 поста, пращам друго куери, което ми връща по 10 поста за всеки от 10-те усера от предното куери и т.н.

Разбира се ако убедиш ръководството да ни даде всичко няма да се съпротивлявам icon_smile.gif


--------------------
I find your lack of faith disturbing
PM
Top
0 потребители преглеждат тази тема в момента (0 гости, 0 анонимни потребители)
Потребители, преглеждащи темата в момента:

Topic Options Страници: (3) 1 [2] 3  Reply to this topicStart new topicStart Poll

 


Copyright © 2003-2018 | BG Development | All Rights Reserved
RSS 2.0