Аппараттық және бағдарламалық қамтамасыз етуді орнату

Қолданбаларды пайдаланып MySQL дерекқорын қалай жылдам тасымалдауға болады. MySQL дерекқорын басқа серверге тасымалдау Дерекқордан файлдарды шығару

Автордан:Жақында туыстары қонаққа келді. Осылайша, бір-екі күннің ішінде олар алдымен бүкіл азық-түлік базасын сарқып тастады, содан кейін бүкіл жүйкені «компосттандырды», соңында музыкалық базаны өртеп жіберді ( музыка орталығы). Жалпы, күнәдан алыс, мен базаны тез ауыстыруды шештім MySQL деректері. Егер сіз де осындай жағдайда болсаңыз, онда бұл мақаланы міндетті түрде оқып шығыңыз.

Экспорттаудың жылдам жолы

phpMyAdmin шолуынан бастайық. Дерекқорды тасымалдау үшін алдымен оның телнұсқасын жасау керек. Бұл үшін бағдарламаның арнайы функционалдығы бар. Егжей-тегжейлі қарастырыңыз бұл процесс:

Алдымен сол жақтағы тізімнен қажетті дерекқорды таңдап, содан кейін «Экспорттау» мәзір қойындысына өтуге болады. Қолданса бұл опция, содан кейін кесте бойынша MySQL көшіру орындалады. Ол үшін «Экспорттау әдісі» ішінде «Қалыпты» орнатыңыз, ал «Кестелерде» экспорттау элементтерін таңдаңыз.

Егер сіз бүкіл дерекқорды (барлық кестелермен) экспорттағыңыз келсе, дереу «Экспорттау» бөліміне өтіңіз. Тек мұнда біз кестелермен емес, деректер базасымен жұмыс істейміз. «Экспорттау әдісінде» де «Қалыпты» параметрін орнатыңыз. Содан кейін қажетті дерекқорды таңдап, «Шығыс» бөлімінде «Шығысты файлға сақтау» опциясын таңдаңыз.

Келесі қадам дерекқордың көшірмесі сақталатын пішімді орнату болып табылады. Сәйкес тізімнен «SQL» мәнін таңдаңыз. Бұл көшірмені көптеген платформаларда пайдалануға болатынын қамтамасыз етеді. Бірақ егер сіз дерекқорды белгілі бір негізге көшіргіңіз келсе, мұнда сәйкес пішімді таңдауға болады: РНР массиві, CSV, PDF және т.б.

Төмендегі "Пішім параметрлері" және "Деректерді сақтау опциялары" бөлімдерінде MySQL дерекқорын тасымалдау үшін " " опцияларынан көп параметрлерді конфигурациялауға болады. Бірақ біз олардың шолуына егжей-тегжейлі тоқталмаймыз. Егер сіз олардың кез келгенімен таныс болмасаңыз, әдепкі параметрлерді (қажетсіз) өзгертпегеніңіз жөн. Мұнда сіз ДҚБЖ ескі нұсқаларымен максималды үйлесімділікті және кестелердің қалай сақталатынын конфигурациялай аласыз. Тек деректерді немесе құрылымдарды экспорттай аласыз. Біз кестелерді толығымен көшіреміз («құрылым және деректер» опциясы).

Дерекқордың көшірмесін жасау үшін барлық параметрлерді орнатқаннан кейін төменгі жағындағы «OK» түймесін басыңыз. Нәтижесінде біз басқа серверге оңай тасымалданатын қайталанатын деректер қорын аламыз. Әдепкі бойынша, жасалған файл браузеріңіздің жүктеп алынғандар қалтасында сақталады.

Біз импорттаймыз

PhpMyAdmin көмегімен сіз бүкіл сервердің, дерекқорлардың және жеке кестелердің көшірмелерін ғана жасай алмайсыз. Бағдарлама MySQL деректерін басқа ДҚБЖ данасына оңай тасымалдауға мүмкіндік береді. Бұл процесс дерекқорды экспорттауға өте ұқсас. phpMyAdmin дерекқорға бөлек кестелерді де, серверге бірден бірнеше дерекқорларды тіркей алады. Тізімнің сол жағындағы кестелерді тіркеу үшін қажетті дерекқорды таңдап, «Импорт» қойындысына өтіңіз.

Дерекқорды (немесе бірнеше дерекқорды) серверге тіркеу үшін дереу көрсетілген қойындыға өтіңіз. Содан кейін «Файлды импорттау» бөлімінде «Компьютеріңізге шолу» тармағын тексеріңіз және шолушы арқылы дерекқор файлының орнын көрсетіңіз.

Мұнда деректер импортталған көзде көрсетілетін кодтауды көрсету керек. Бұл параметрге абай болу керек, әйтпесе кестелердегі жолдардың орнына нақты «иероглифтер» пайда болады және оларды шешу үшін жергілікті жапон немесе қытай жалдауға тура келеді. Ал олармен біздің ауданда нағыз тапшылық бар.

Ең жиі қолданылатын кодтау UTF-8 болып табылады, ол әдепкі болып табылады. Сондықтан, портативті MySQL дерекқорында қайсысы қолданылатынын білмесеңіз де, осы кодтауды қолданып көруіңіз керек. Кез келген жағдайда, сіз әрқашан импортталған дерекқорды жоя аласыз, содан кейін оны басқа кодтаумен «қайта жүктей аласыз».

Мен де phpMyAdmin-нің «құлшыншақ» жанкүйерлерін ренжітуге асығамын. Бұл утилиташағын негіздердің экспорт-импортына ғана жарамды (2 «метрге» дейін). Бұл мән серверді ішінара (кезеңді) тасымалдау үшін жеткілікті, ол өте ыңғайлы болмауы мүмкін және бүкіл процесті ұзақ уақытқа созады.

«Формат» бөлімінде мәнді «SQL» етіп орнатыңыз. Қажет болса, үйлесімділік режимін қосыңыз. Сондай-ақ біз нөлдік мәні бар бағандар үшін кілт мәнін автоматты түрде жасауды өшіреміз (импортталған көздің кестелерінің құрылымына байланысты). Импорттауды аяқтау үшін «OK» түймесін басыңыз.

Егер сіз MySQL дерекқорын сақтық көшірмеден тасымалдағыңыз келсе, импорттауды бастамас бұрын серверден «түпнұсқа» дереккөзді жоюды ұмытпаңыз. Әйтпесе, берілген дерекқор бұрыннан бар болғандықтан қате туралы хабар аласыз.

Егер процесс сәтті болса, бағдарлама жүйесі сәйкес хабарламаны көрсетеді.

Баламалы бағдарламалық қамтамасыз ету

Мен сені әртүрлі нәрселермен таныстырамын деп уәде бердім бағдарламалық қамтамасыз етуДҚБЖ әкімшілігі үшін. Осылайша сіз өзіңіздің «кәсіби» көкжиектеріңізді кеңейтіп, қажеттіліктеріңіз бен кәсіптеріңізге сәйкес келетін бағдарламаны таңдай аласыз.

Бүгін біз MySQL портативтілігін дерекқорды жасаушылар әзірлеген қуатты мүмкіндіктерге бай қолданба арқылы тексереміз. Жүктеп алу MySQL жұмыс үстеліСіз компанияның ресми ресурсынан аласыз. Ол сондай-ақ осы платформаны пайдаланып ДҚБЖ басқару үшін қажет болатын бірнеше үшінші тарап таратуларын (және оларға сілтемелерді) егжей-тегжейлі сипаттайды.

Тағы да қайталаймын: қарастырылып отырған құралдың қуатты функционалдығы бар, сондықтан біз SQL пішіміндегі жеке дерекқорларды импорттау және экспорттау үшін жасалғанын ғана қарастырамыз. Мұны істеу үшін бағдарламаны іске қосыңыз, қажетті қосылымның белгішесін басыңыз (егер бірнеше болса).

Навигатор тақтасының сол жағында ашылатын жаңа терезеде қажетті қойындыны таңдаңыз (экспорттау немесе импорттау үшін). Мен phpMyAdmin көмегімен жасалған қайталанатын дерекқорды импорттап жатырмын.

MySQL деректерін тасымалдауды жүзеге асыру үшін «Деректерді импорттау» тармағынан өтіңіз. «Импорттау параметрлері» бөліміндегі аттас қойындыда екінші опцияны таңдаңыз (суретте көрсетілген).

Бізде ешқандай схемалар болмағандықтан, төменгі жағындағы «Импортты бастау» түймесін басамыз. Көршілес қойындысы «Импорттау барысы» тасымалдау процесінің күйін көрсетеді көрсетілген файл. Бұл опция деректердің үлкен көлемін импорттау кезінде пайдалы болуы мүмкін.

MySQL тасымалдауы аяқталғаннан кейін бізде дерекқорлар тізімінде db1 болады, оның көшірмесі phpMyAdmin көмегімен жасалған.

Ал, бұл арада мен MySQL дерекқорымды «жасырадым», туыстарының бәрі кетіп қалды. Бос емес болғандықтан, тоңазытқыштың азық-түлік базасын толықтыратын ешкім болмады. Міне, менің сүйікті ДҚБЖ мені «байланысты» бақытсыздықтан құтқарды. Ол үшін оған көп рахмет.

Қандай жолдар бар?

1 - phpMyAdmin интерфейсін пайдалану.

2 - хостинг провайдерінің басқару тақтасын пайдалану.

3 - үшінші тарап бағдарламасын пайдалану.

Қай жол жақсы?

Біріншісін ұсынамыз, өйткені оның схемасы қарапайым және оны көптеген веб-шеберлер пайдаланады. Үшінші әдісті қолдануды ұсынбаймыз! Сайтыңыздың мазмұнына ешқашан сенбеңіз үшінші тарап бағдарламалары, түсініксіз әзірлеушілерден басқа. Сіз сондай-ақ екінші әдісті пайдалана аласыз, бірақ оның алгоритмі өте әртүрлі және хосттердің басқару панеліне байланысты. Сондықтан біз бірінші нұсқаны егжей-тегжейлі қарастырамыз және деректерді жоғалтпай немесе бүлдірмей MySQL дерекқорларын қалай сауатты тасымалдау керектігін айтамыз.

Жаңа хостингте дерекқор жасаңыз

Егер сіз MySQL дерекқорын тасымалдағыңыз келсе, сізде дерекқор бар және оны қалай жасау керектігін білесіз. Кез келген жағдайда, бұл процесс хостинг провайдерлерінің әрқайсысы үшін әртүрлі, бірақ бір жалпы алгоритмге келеді:

1 - Біз «MySQL», «Дерекқорлар» бөлімін немесе ұқсас нәрсені іздейміз.

2 - Онда «Жасау» түймесін басыңыз.

3 - Дерекқордың атын енгізіңіз, оған пайдаланушы тіркеңіз (әдетте дерекқор пайдаланушысы бұрыннан жасалған, егер жоқ болса, оны жасаңыз және ең жоғары құқықтарды орнатыңыз) және дерекқордың құпия сөзін енгізіңіз.

4 - Дерекқор жасалды, бірақ ол қазір бос.

Ескі хостингтен дерекқорды экспорттау

Енді біз дерекқордың демпі деп аталатын нәрсені қолданамыз. Анау. ағымдағы дерекқорды серверден компьютерге сақтаңыз. Бұл әрекетті орындау үшін бізге phpMyAdmin интерфейсі қажет, оны табу керек жеке шотағымдағы веб-сайтыңызды орналастыратын хостинг провайдері. Тағы да, жалғыз алгоритм жоқ, сондықтан біз жалпы схеманы ұсынамыз:

2 - Бұрыштағы сол жақтағы дерекқорды таңдаңыз (кейінірек оны басқа хостингке тасымалдау үшін компьютерге экспортталатын дерекқорды таңдаңыз).

4 - Сізден «Қалыпты» (көп параметрлер) немесе «Жылдам» (бірнеше параметрлер) экспорттау әдісін таңдау сұралуы мүмкін. Қайсысын таңдау маңызды емес, бастысы - төменде сипаттайтын параметрлерді ғана өзгерту.

5 - «Барлығын таңдау» түймесін басу арқылы барлық кестелерді таңдау керек.

7 - Кез келген жағдайда кодтауды есте сақтаңыз, бірақ оған қол тигізбеңіз.

8 - «OK» түймесін басып, файлды дерекқордан компьютерге сақтаңыз. Әдетте, сақталған файлда .sql кеңейтімі болады.

Дерекқорды жаңа хост серверіне импорттау

1 - Дәл осылай біз жаңа хостингте phpMyAdmin іздейміз.

2 - Онда қажетті дерекқорды таңдаңыз (біз оны мақаланың басында жасадық және ол бос қалды).

3 - «Импорттау» қойындысын басыңыз.

4 - «Шолу» түймесін басып, компьютерде сақталған дерекқорды таңдаңыз.

5 - Кодтау дерекқорды сақтаған кодқа сәйкес келетінін тексеріңіз.

6 - Басқа ештеңені өзгертпеңіз, «OK» түймесін басыңыз және дерекқор жаңа хостингке импортталады.

Қандай проблемалар бар?

1 - Дерекқорды импорттау кезінде оның құрамында " сияқты сұраулар болмауы керек. ДЕРЕКТЕР ҚОРЫН ЖАСАУ, /*!40101 SET @OLD«. Олардың бар-жоғын тексеру үшін - кез келген файлмен компьютерде дерекқор файлын ашыңыз мәтіндік редактор(Блокнот++ жақсы жұмыс істейді) және осы сұрауларды іздеу үшін Ctrl+A пернелерін пайдаланыңыз. Егер сіз оны тапсаңыз, оларды жойып, дерекқорды қайта импорттап көріңіз.

2 - Импорттау кезінде жаңа хостта орналасқан дерекқор бос болуы керек, егер онда кестелер бар болса, оларды таңдап, жойыңыз.

Соңғы жаңарту: 31.10.2015 ж

Файлдық дерекқорға сақтау

Біз файлдарды, атап айтқанда кескін файлдарын дерекқорға қалай сақтауға болатынын қарастырайық. Ол үшін төрт бағанды ​​дерекқорға жаңа кесте Images қосыңыз: Id ( бастапқы кілтжәне идентификатор int түріне жатады), FileName (файл атын сақтайды және nvarchar түріне жатады), Тақырып (файлдың тақырыбын сақтайды және сонымен қатар nvarchar түріне жатады) және ImageData (файлдың екілік деректерін және varbimary (MAX) түріне жатады.

Кестеге деректер жүктелетін кодты анықтайық:

Жеке статикалық жарамсыз SaveFileToDatabase() ( string connectionString = @"Дерек көзі=.\SQLEXPRESS;Initial Catalog=usersdb;Integrated Security=True"; пайдалану (SqlConnection қосылымы = жаңа SqlConnection(connectionString))) ( қосылым.Open); = new SqlCommand(); command.Connection = қосылым; command.CommandText = @"Суреттер МӘНДЕРІНЕ КІРУ (@ФайлАты, @Тақырып, @ImageData)"; command.Parameters.Add("@FileName", SqlDbType.NVarChar, 50 ); command.Parameters.Add("@Title", SqlDbType.NVarChar, 50); command.Parameters.Add("@ImageData", SqlDbType.Image, 1000000); // жол файлын жүктеуге арналған файл жолы = @" C:\Users\Eugene\Pictures\cats.jpg"; // файл тақырыбы жолының тақырыбы = "(!LANG:Cats"; // получаем короткое имя файла для сохранения в бд string shortFileName = filename.Substring(filename.LastIndexOf("\\")+1); // cats.jpg // массив для хранения бинарных данных файла byte imageData; using (System.IO.FileStream fs = new System.IO.FileStream(filename, FileMode.Open)) { imageData = new byte; fs.Read(imageData, 0, imageData.Length); } // передаем данные в команду через параметры command.Parameters["@FileName"].Value = shortFileName; command.Parameters["@Title"].Value = title; command.Parameters["@ImageData"].Value = imageData; command.ExecuteNonQuery(); } } !}

Бұл бағдарламаны орындағаннан кейін мәліметтер базасында сәйкес жазба пайда болады:

Мәліметтер қорынан файлдарды шығарып алу

Соңғы тақырыпта дерекқорға файлды қосу жолын қарастырдық. Енді кері операцияны орындаймыз – файлды мәліметтер қорынан аламыз. Алдымен деректермен жұмыс істеуді жеңілдететін файл класын анықтайық:

Жалпы сынып кескіні (қоғамдық кескін(int идентификаторы, жол файл аты, жол тақырыбы, байт деректері) ( Id = идентификатор; Файл атауы = файл аты; Тақырып = тақырып; Деректер = деректер; ) public int Id ( алу; жеке жиын; ) жалпы жол FileName ( алу; жеке жиын; ) жалпы жол Тақырып ( алу; жеке жиын; ) жалпы байт Деректер ( алу; жеке жиын; ) )

Содан кейін бағдарлама кодында келесі әдісті анықтаңыз:

Жеке статикалық жарамсыз ReadFileFromDatabase() ( string connectionString = @"Дерек көзі=.\SQLEXPRESS;Бастапқы каталог=usersdb;Біріктірілген қауіпсіздік=Шын"; Тізім суреттер = жаңа тізім (); (SqlConnection қосылымы = жаңа SqlConnection(connectionString)) (connection.Open(); string sql = "ТАҢДАУ * Суреттерден"; SqlCommand пәрмені = жаңа SqlCommand(sql, байланыс); SqlDataReader оқу құралы = command.ExecuteReader(); while( reader.Read()) ( int id = reader.GetInt32(0); жол файл аты = reader.GetString(1); жол тақырыбы = reader.GetString(2); байт деректері = (байт)reader.GetValue(3); кескін бейнесі= жаңа кескін (идентификатор, файл аты, тақырып, деректер); суреттер.Қосу(сурет); ) ) // тізімнен бірінші файлды сақтаңыз if(images.Count>0) ( (System.IO.FileStream fs = new System.IO.FileStream(images.FileName, FileMode.OpenOrCreate))) ( fs.Write() кескіндер. Деректер, 0, кескіндер.Деректер.Ұзындығы); Console.WriteLine("Сурет "(0)" сақталған", кескіндер.Тақырып); ) ) )

Бұл әдісте SqlDataReader көмегімен біз дерекқордан мәндерді аламыз және олардан Image нысанын жасаймыз, содан кейін ол тізімге қосылады. Ал соңында біз тізімде элементтер бар болса, бірінші элементті алып, оны сақтаймыз жергілікті компьютер. Ал сақталғаннан кейін дерекқордан жүктелген файл бағдарламамыздың қалтасында пайда болады.

Сәлем достар! Мақала блогосфераға қатысты және онда біз TimeWeb хостингінде сайттың дерекқорын сақтауды қарастырамыз.

TimeWeb хостингі, веб-сайт деректер базасы

Өз сайтын (блогын) жасаған әрбір адам мезгіл-мезгіл өз сайтының мәліметтер базасын сақтау қажет екенін біледі. Мұның себептері бар.

Хостингте техникалық ақаулар болуы мүмкін, шабуылдаушылар сіздің сайтыңыздың басқару панелінен құпия сөзді және басқа да мәселелерді таңдай алады. Дерекқорды сақтау жиілігіне адамдардың көзқарасы әртүрлі, бірақ оларды бір мәнді түрде сақтау керек. Бастапқы кезеңде, өз блогымды жасағаннан кейін (мен мақалада жаздым), мен оның көшірмесін жасау керектігін білдім. Менің бірінші әрекетім сәтсіз болды, бірақ мұнда күрделі ештеңе жоқ (мен мұны кейін білдім). Оның да мәліметтер базасын оңтайландыра алмағаны анық.

Мен Интернеттегі мақалаларды қарадым, бірақ ол жалпы айтады. Біраз сынақ пен қателіктен кейін бәрі сәтті болды. Сондықтан мен сайттың дерекқорының көшірмесін қалай жасауға болатыны туралы шағын мақала жазуды шештім қатты дискмүмкін менің тәжірибем пайдалы болар.

Сайт TimeWeb хостингінде (WordPress қозғалтқышы) орналастырылған. Мен сайттың дерекқорын аптасына бір рет сақтаймын, біреу жиі жасайды, біреу жиі жасайды - бұл әркімнің ісі. Сайттың екі негізгі құрылымын сақтау қажет, бұл файлдық жүйе және сайттың дерекқоры. В файлдық жүйемыналарды қамтиды: WordPress қозғалтқышы, орнатылған тақырыптар, плагиндер және суреттер.

Дерекқорға сайт мазмұны (беттер, мақалалар, пікірлер) кіреді. TimeWeb хостингі үнемі сақтық көшірмелерді жасайды және оларды соңғы үш күнде сақтайды. Сіз әкімші панелінен деректерді сақтай аласыз, сіз тікелей хостингтен аласыз, мен оны екінші опцияға сәйкес жасаймын.

Сонымен, басқару панеліндегі хостингке өтіңіз (1-сурет).

«САҚТЫҚ көшірмені басқару» түймесін басыңыз. Ашылған терезеде public_html жолындағы көрсеткіні басыңыз. Үй каталогындағы public_html файлын/каталогын шынымен мұрағаттағыңыз келетінін растаңыз (2-сурет).

Бірнеше секундтан кейін мұрағаттау аяқталады. Әрі қарай, осы терезеден шықпай-ақ, доменіңіз тіркелген жолда көрсеткіні басып, файлды/каталог мұрағатын шынымен сақтағыңыз келетінін растаңыз.

Мұрағаттау бірнеше минутты алады (бәрі сайттағы деректер көлеміне байланысты). Осыдан кейін «Қосу» түймесін басыңыз бастапқы бет» (үстелдің төменгі жағында) және жалғастырыңыз басты беттүймесін басыңыз Файл менеджері«. Мұрағаттау күні бойынша бізге қажетті екі файлды таңдап алып, бір-бірден сақтаймыз.

Ол үшін таңдалған файлдарды бір-бірден екі рет шертіңіз (3-сурет), қайда сақтау, сақтау сұралады. Біз сақталған файлдарды қауіпсіз қалталарға жасырамыз, оларды сақтау артық болмайды DVD дискі. Деректеріңізді сақтауды ұмытпаңыз.

Және одан әрі. Осы мақаланы жазғаннан кейін менің сайтымның (блогымның) деректеріне қатысты проблемалар туындады, мәселелер сәтті шешілді. Сондықтан, жұмысымның нәтижесі бойынша шығармашылық туралы мақалалар жарияланды сақтық көшірмедерекқор (мақала), сондай-ақ деректер базасын жүргізу және оңтайландыру (мақалалар

Мақала ұнады ма? Достарыңызбен бөлісіңіз!
Бұл мақала пайдалы болды ма?
Иә
Жоқ
Пікіріңізге рахмет!
Бірдеңе дұрыс болмады және сіздің дауысыңыз есептелмеді.
Рақмет сізге. Сіздің хабарламаңыз жіберілді
Мәтіннен қате таптыңыз ба?
Оны таңдаңыз, басыңыз Ctrl+Enterжәне біз оны түзетеміз!