Kuinka nopeasti siirtää MySQL-tietokanta sovellusten avulla. Tietokannan siirto isännöintiin

Hei rakkaat ja rakkaat blogini lukijat! Tänään haluaisin kertoa sinulle kuinka siirrän mysql-tietokannan isännöintiin.

Tulemme tänään ilman kaunopuheisia ja pitkiä esittelyjä, mennään asiaan.

Millä tavoilla tietokanta voidaan kopioida isännöintiin?

Voin vakuuttavasti sanoa, että kopiointitapoja on varmasti monia. Mutta en halua enkä aio kuvailla irrationaalisia ja epärealistisen monimutkaisia ​​menettelyjä, koska siinä ei ole järkeä (on epätodennäköistä, että lukijoiden riveissä piilee ihmisiä, jotka haluavat monimutkaistaa elämäänsä).

Siksi aloitamme yksinkertaisista ja edullisista vaihtoehdoista suurille massoille, mukaan lukien:

  1. Tietojen vienti phpMyAdmin-liittymällä palveluntarjoajan ohjauspaneelin kautta.
  2. Tietokannan kopioiminen kolmannen osapuolen ohjelmilla.

Mikä on paras tapa?

Suosittelen ensimmäistä ammattimaisten verkkovastaavien käyttämää. Ainoa asia, joka kannattaa muistaa, on, että asennusalgoritmi voi vaihdella, koska jokaisella isännöinnillä on oma yksilöllinen ohjauspaneeli.

Toinen vaihtoehto, vaikka se ei aiheuta vaikeuksia, mutta en suosittele sen käyttöä! On todella huono idea luottaa verkkoresurssiasi koskevat tiedot kolmansien osapuolten ohjelmiin.

Vaiheittaiset ohjeet tietokannan luomiseen uudelle hosting-palvelulle

Aloitetaan siitä, että en kuvaile itse mysql-tietokannan luomismenettelyä, koska todennäköisimmin, kun olet tehnyt päätöksen tuoda se isännöintiin, huolehdit sen luomisesta aiemmin. Tämä tarkoittaa, että olemme valmiita aloittamaan yleisen algoritmin toteuttamisen tietokannan luomiseksi isännöintiin, joka edellyttää:

  1. Henkilökohtaisen tilin aktivointi vuokratulla hosting-palvelulla.
  2. Hae valikosta osiota "MySQL", "Database" tai samanniminen valikko.
  3. Tietokannan suora luominen isännöinnistä.
    Voit tehdä tämän painamalla "Luo" -painiketta. Rekisteröimme tietokannalle uuden nimen, sitomme siihen käyttäjän (usein isännöintipalveluntarjoaja luo käyttäjän automaattisesti, mutta joskus tämä toimenpide kannattaa tehdä itse. Jos näin tapahtuu, älä unohda aktivoida korkein käyttöoikeustaso oikeudet tälle tilille).

Siirrämme MySQL-tietokannan vanhasta isännöinnistä tietokoneelle

Nyt ehdotan siirtymistä vaiheeseen, jota kokeneet käyttäjät kutsuvat tietokannan kaatopaikaksi. Tarkemmin sanottuna tallennetaan nykyinen tietokanta vanhasta isännöinnistä tietokoneellemme.

Merkintä! Kaatopaikka On toiminnallinen tiedosto, jonka tarkoituksena on yksinkertaistaa tietojen siirtoa tietokannasta.

Toimintatapa:

Musql-tietojen tuonti uuteen isännöintiin

  1. Siirry isännöinnin hallintapaneeliin samalla tavalla kuin edellisessä osiossa.
  2. Valitsemme tarvitsemamme tietokannan (sen, jonka loimme heti alussa).
  3. Napsauta "Tuo"-välilehteä.
  4. Napsauta "Selaa" ja ilmoita tiedoston sijainti tietokoneellesi aiemmin tallennetulla tallennustilalla.
  5. Tarkistamme koodauksen samankaltaisuuden tiedoston tallennuksen yhteydessä käytetyn koodauksen kanssa (edellisen osion kohta 7).
  6. Jätä kaikki muut asetukset ennalleen ja suorita tietojen kopiointi uudelle isännöintipalvelimelle.

Mahdollisten ongelmien ratkaiseminen

Varmista, että ennen kuin aloitat materiaalien tuomisen uuteen isännöintiin, tallennustiedostossa ei ole kyselylauseita "CRЕATE DATABASE". Voit tehdä tämän avaamalla sen millä tahansa tekstiohjelmalla (voit käyttää Notepadia tai Wordpadia) ja käyttämällä Ctrl + F (tekstihakua) löytääksesi nämä kyselyt, ja jos löydät, poista ne.

Toivottavasti kaikki on selvää?! Noudattamalla vaiheittaisia ​​​​ohjeita sinulla ei pitäisi olla vaikeuksia.

Jaa blogini hyödyllisiä artikkeleita sosiaalisissa verkostoissa ystäviesi kanssa, tilaa päivitykset ja nähdään pian!

Ystävällisin terveisin! Abdullin Ruslan

Sivustomme tiedostot on ladattu onnistuneesti isännöintiin. Älä tuhlaa aikaa ja siirrä olemassa olevaa tietokantaa (DB) paikallisesta palvelimelle.

Voit tehdä tämän siirtymällä PhpMyAdminiin. Kuka on unohtanut missä se on, katso.

Näemme tietokantamme (mebelip) ja napsautamme nimeä.

Edessämme avautui ikkuna, jossa oli paljon dataa, jotka eivät sano mitään aloittelijalle. Mutta emme tarvitse sitä nyt.

Napsautamme vain Vie-välilehteä.


Haluan muistuttaa, että OpenServer avautuu oletuksena Chrome-selaimessa. Siksi vasemmassa alakulmassa näemme ladatun tiedoston. Muista, mihin tallensit sen, tarvitsemme sitä pian.

Napsautamme sitä.


Hauskuuden vuoksi voit nähdä, mitä "salaista" tietoa siinä on. Se avautuu yksinkertaisella Notepadilla.


Siinä kaikki, olemme valmiita paikallisen palvelimen kanssa. Siirry isännöintitilisi hallintapaneeliin.

Täällä olemme kiinnostuneita "MySQL"-välilehdestä.


Paina painiketta "Lisää MySQL-käyttäjä". Oletuksena se on jo luotu. Mutta suosittelen uuden luomista erityisesti tätä sivustoa varten.

Tulevaisuudessa, kun sinulla on täällä useampi kuin yksi sivusto, tämä auttaa välttämään sekaannuksia.


Ponnahdusikkuna ilmestyi, rekisteröimme siihen käyttäjätunnuksen. Se koostuu kahdesta osasta, joista ensimmäinen on host1234567 (numerot ovat sinun), muuttumaton osa, mutta toiseen kirjoitamme tietomme.

Minulle lisämukavuuden vuoksi se on "meb". Näin en hämmentyi, ja tiedän varmasti, että tämä viittaa huonekalukohteeseen.

Voit laittaa salasanasi.


Näemme, että uusi käyttäjä on ilmestynyt, mutta tietokantaa ei ole liitetty häneen.

Luodaan nyt itse tietokanta.

Napsauta "MySQL-tietokanta" -välilehteä.


"Lisää MySQL-tietokanta" -painike.

Kirjoita nimi ponnahdusikkunaan. Mukavuuden vuoksi on parempi rekisteröidä samat tiedot kuin käyttäjätunnuksessa.


Käyttäjälle ilmestyi aiemmin luomamme tietokanta.

Kirjoita nämä tiedot jonnekin, esim. käyttäjätunnus ja tietokanta sekä salasana, jos vaihdoit sen. Kaikkea tätä tarvitaan seuraavalla oppitunnilla.

Napsauta "phpMyAdmin".


Napsauta vasemmalla oletustietokantaa.


Löydämme omamme, juuri luodun, ja myös avaamme sen.


Etsi "Tuo"-välilehti ylhäältä - napsauta.

16. toukokuuta

Äskettäin heräsi kysymys sivuston siirtämisestä isännöinnistä toiseen. Kun sivustot ovat vain yhdellä html:llä ja css ilman tietokantoja - vaikeuksia ei pitäisi syntyä. Tanssi tamburiinin kanssa alkaa, kun olet tietokantasivuston ylpeä omistaja. Nyt tällaisia ​​Internetin sivustoja on ylivoimainen enemmistö.

Voimme siirtää itse sivuston tiedostot tavallisella kopiolla isännöinnistä isännöintiin

Tietokannan siirtämiseksi palvelimelta toiselle tarvitsemme:
1. Lataa tietokantavedos tietokoneellesi (vientitoiminto).

2. Lataa tietokantavedos isännöintipalvelimelle (tuontitoiminto).

Tämä voidaan tehdä useilla eri tavoilla. Jotkut sisällönhallintajärjestelmät jopa sallivat näiden toimintojen suorittamisen sisäisesti. Voit myös käyttää MySQL-tietokannan dumperia. Mutta tunnetuin ja yleisin menetelmä tietokantojen siirtoon on siirto tietokannan ohjauspaneelin avulla, jota haluaisin tarkastella tässä artikkelissa.

1. Vie tietokanta palvelimelta tietokoneellesi.

Meidän on mentävä palvelimelle, jolla siirrettävä tietokanta tällä hetkellä sijaitsee, ja valitse tietokantaluettelon valikon vasemmasta reunasta se, jonka haluat siirtää.

Sinun täytyy mennä " Viedä"Ja valitse" Vientimenetelmä»- Normaali - näyttää kaikki mahdolliset asetukset.

Sen jälkeen sinun on kiinnitettävä huomiosi kenttiin:
1. Kaikki tuotavat taulukot on valittava Taulukko-välilehdeltä. Saattaa olla sellainen tilanne, että joitain taulukoita ei tarvita tuonnin aikana tietokantojen siirtoon. Tässä tapauksessa voit poistaa tarpeettomien taulukoiden valinnan valitsemalla tarvittavat taulukoiden nimet samalla, kun pidät näppäimistön Ctrl-näppäintä painettuna. (TÄRKEÄ! Jos et ole kokenut tietokannan käyttäjä, on parasta valita kaikki taulukot. )
2. Sinun on valittava "Tallenna tulos tiedostoon" -kohta.
3. Muista kentässä - Tiedoston koodaus - asetettu koodaus.
4. Muihin esineisiin ei tarvitse koskea, jos et tiedä miksi niitä tarvitaan.
5. Napsauta OK ja tallenna tiedosto tietokoneellesi.

2. Tietokannan tuonti tietokoneesta palvelimelle.

1. Tarkistamme tallennetun melonitietokannan laajennuksen tietokoneellamme. Sen pitäisi olla ".sql". Jos tietokantaa tallennettaessa kohde määritettiin - arkistoi se (zip, gzip, bzip) - sinun on ensin purettava tietokanta arkistosta.
2. Tietokantavedos ei saa sisältää kyselyitä, kuten « LUO TIETOKANTA, / *! 40101 SET @OLD» ... Voit tarkistaa tällaisen pyynnön puuttumisen tai olemassaolon avaamalla tietokannan vedosluettelon muistilehtiöllä tai muulla tekstieditorilla. Jos tällainen pyyntö on olemassa, poista tämä rivi ja tallenna tiedosto uudelleen. Pääsääntöisesti se sijaitsee tietokannan vedosvedoksen ensimmäisellä 15 rivillä.
3. Sinun on varmistettava, että tulevaan tietokantaan ei luoda taulukoita. Voit tehdä tämän siirtymällä kohtaan ja valitsemalla tietokantaluettelon valikon vasemmalla puolella. Valikon vasemmalla puolella näet viestin "Tietokasta ei löytynyt taulukoita." Jos taulukoita on, sinun on poistettava ne.

Kun olet suorittanut kaikki nämä kohdat, voit siirtyä turvallisesti "Tuo" -välilehteen, jossa napsauttamalla "Selaa" -painiketta, valitse tallennettu tietokantavedos tietokoneelta. Valitse "Tiedoston koodaus:" -kentässä koodaus, jolla tämä tietokanta luotiin.

Ei tarvitse tehdä enempää asetuksia. Klikkaa OK ja odota tietokannan tuonnin päättymistä.

Kanta on siirretty onnistuneesti ja sen jälkeen sivustomme toimii uudella isännöinnillä! (edellyttäen, että kaikki muut sivuston siirtotoimenpiteet on jo tehty).

Sinulla on MS SQL Server -tietokanta, joka sinun on siirrettävä toiseen fyysiseen tietokoneeseen. Olet jo tehnyt varmuuskopion ja aloitat onneksi palautuksen. Mutta sitten käy ilmi, että tietokoneeseen, johon sinun on siirrettävä tietokanta, on asennettu vanhempi versio MS SQL Serveristä. Stack Overflow vakuuttaa, että asiat ovat huonosti. Mutta onko se todella niin?

Tietokannan siirtäminen uudemmasta versiosta vanhaan ei tietenkään ole klassinen eikä se kaikkein oikein skenaario. Mutta usein tietokannat luodaan siten, että ne tukevat yhä enemmän uusia SQL-versioita, alkaen joistakin, esimerkiksi 2008 R2:sta, koska Eteenpäin yhteensopivuus MS SQL:n kanssa on enemmän kuin erinomainen. Ja esimerkiksi asiakkaasi on jo asentanut itselleen MS SQL 2016:n ja sinulla on testipalvelimella kehitystä varten MS SQL 2014. Ja haluat ottaa käyttöön asiakaskuntasi selvittääksesi, missä hänen tietosekaannuksensa on.

Microsoft kielsi ongelman - he sanovat, ettei heillä ole taaksepäin yhteensopivuutta, ja siinä se. Uudemmalla palvelimella luotua varmuuskopiota ei voi palauttaa vanhemmalle palvelimelle. Kyllä, heillä on työkaluja, kuten DTS, tietokannan kopiointi, vienti-tuonti jne. Mutta ne ovat niin hankalia ja hankalia, että suuren tietokannan, jossa on monia taulukoita, normaali siirto ei ole kovin kätevää heidän avullaan. Joka tapauksessa en henkilökohtaisesti onnistunut.

Kyllä, voit luoda SQL-komentosarjat koko tietokannalle, mukaan lukien tiedot. Mutta kuvittele, että tietokannassasi on joukko blob-kenttiä isolla datalla, ja yleensä koko tietokannan koko on 500+ Gt. Kuvittele kuinka kauan tällainen komentosarja kestää, kuinka kauan se luodaan ja suoritetaan.

Rajoitus numero yksi on, että tarvitset pääsyn MS SQL Management Studion kautta molempiin palvelimiin - vanhoihin ja uusiin. Jos tämä ei ole mahdollista, sen pitäisi olla mahdollista koneella, josta sinun täytyy siirtää tietokanta, asentaa se SQL-versio, johon sinun on siirrettävä tietokanta, jotta tietokanta voidaan siirtää ensin tähän versioon paikallisesti ja Vedä se sitten varmuuskopion läpi tai suoraan * df -tietokantatiedostojen kautta (Detach / Attach kautta) uuteen koneeseen (SQL Serverin versio "ja tässä tapauksessa se on jo sama).

Toinen rajoitus on, että tarvitset tietokantaskeeman komentosarjan (kaikki objektit, mukaan lukien taulukot, indeksit, rajoitukset, tallennetut toiminnot, triggerit jne.) ilman dataa, ja tämän skriptin vieraiden avainten rajoitusten luontiohjeiden on mentävä aivan loppuun asti. , erillään itse taulukoiden luontiohjelmasta.

Kuvaan lyhyesti itse tiedonsiirtoalgoritmia. Kaikki toiminnot suoritetaan palvelimeen yhdistetyssä Management Studio -istunnossa, jonka päällä sinun on siirrettävä pohja.

1) Luo uudelle palvelimelle tyhjä tietokanta, jossa on samat tiedostot ja tiedostoryhmät kuin kannettava tietokanta.

2) Luomme tietokantaskeeman komentosarjan avulla kaikki tietokantaobjektit (taulukot, hakemistot, näkymät, triggerit, tallennetut proseduurit ja funktiot), mutta ilman ulkoisen avaimen rajoituksia. On mahdotonta luoda FK:ta tässä vaiheessa, koska ne häiritsevät tietojen syöttämistä.

3) Yhdistämme tietokannan, josta siirrämme tietoja, linkitetyksi palvelimeksi "ja jotta voimme käyttää kutsuja vanhaan tietokantaan kyselyissä uuteen tietokantaan.

EXEC sp_addlinkedserver @ server = N "LinkedServerAlias", @ srvproduct = N "", @ palveluntarjoaja = N "SQLNCLI", @ datasrc = N "LinkedServerHost \ LinkedServerName"; EXEC sp_addlinkedsrvlogin "LinkedServerUser", "false", null, "RealUser", "RealUserPassword";
4) Koska tietokantarakenteet ovat samat, käytämme sisäänrakennettua tallennettua proseduuria sp_msforeachtable, jonka avulla voimme suorittaa kyselyn jokaisessa tietokantataulukossa luodaksemme komentosarjan tietojen siirtämiseksi vanhasta tietokannasta uuteen kyselyn kautta. lomake

LAITTAA SISÄÄN? SELECT * FROM?
Kysymysmerkin sijaan sp_msforeachtable korvaa kunkin taulukon nimen ja suorittaa kyselyn useita kertoja (kerran jokaiselle taulukolle).

Täällä törmäsin eniten haravoimiin.

A) Ongelma numero yksi on, että taulukoissa, joissa on IDENTITY-kentät, sinun on kutsuttava:

ASETA IDENTITY_INSERT PÄÄLLE; --INSERT INTO ... (lisää itse); SET IDENTITY_INSERT OFF;
b) Ongelma numero kaksi on, että tätä kutsua ei voi tehdä taulukoissa, joissa ei ole IDENTITY-kenttiä, joten on dynaamisesti määritettävä, onko taulukossa IDENITY-sarake vai ei.

Tämä voidaan tehdä seuraavalla kyselyllä:

SELECT * FROM INFORMATION_SCHEMA.COLUMNS WHERE (TABLE_NAME = "SomeTable") AND (COLUMNPROPERTY (object_id ("dbo.SomeTable"), COLUMN_NAME, "IsIdentity") = 1)
c) Ongelma numero kolme on, että kuten kävi ilmi, et voi tehdä IDENITY_INSERT ON -tilassa

INSERT INTO ... VALITSE * FROM ...
, mutta sinun on lueteltava tietyt kentät.

Voit luetella taulukon kenttiä peräkkäin seuraavalla kyselyllä:

SELECT SUBSTRING ((SELECT "," + QUOTENAME (COLUMN_NAME) FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = "Joku taulukko" ORDINAL_POSITION FOR XML-polku (""), 3, 200000);
4) Luo lisäysskripti kaikille taulukoille:

Skriptin luontimenettely

EXEC sp_msforeachtable N "DECLARE @command varchar (MAX); ILMOITTAA @nimi varchar (200); SET @ name =" "?" "; SET @name = ALISTRING (@nimi, 8, LEN (@nimi) -8); SET @command = "" ""; SELECT @ komento = SUBSTRING ((VALITSE "", "" + QUOTENAME (COLUMN_NAME) FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = "" "" + @name + "" "" ORDINAL_POSITION FOR. XML-polku ("" "")), 3, 200000); SET @command = "" LISÄÄ "" + @nimi + "" ("" + @komento + "") VALITSE "" + @komento + "" FROM "" + "" LinkedServerAlias.SourceDatabase. "" + ""? ""; SET @ command = "" JOS ON (valitse * kohdasta INFORMATION_SCHEMA.COLUMNS, jossa (TABLE_NAME = "" "" "" + @Name + "" "" "") JA (SARAKE-OMAISUUS (objektin_tunnus ("" "" dbo. "" [sähköposti suojattu]+ "" "" ""), COLUMN_NAME, "" "" IsIdentity "" "") = 1)) SET IDENTITY_INSERT "" + @name + "" PÄÄLLÄ; "" [sähköposti suojattu]; ASETA @ [sähköposti suojattu]+ ""; "" + "" JOS ON (valitse * kohdasta INFORMATION_SCHEMA.COLUMNS, jossa (TABLE_NAME = "" "" "" + @Name + "" "" "")) JA (SARAKE-OMAISUUS (object_id ("" "" dbo) . "" [sähköposti suojattu]+ "" "" ""), COLUMN_NAME, "" "" IsIdentity "" "") = 1)) SET IDENTITY_INSERT "" + @name + "" OFF; ""; TULOSTA (@komento); --EXEC (@komento); // Jos sitä ei kommentoita, komentosarja suoritetaan välittömästi, ei vain näytetä "


5) Suorita luotu tiedonsiirtokomentosarja

6) Suorita komentosarja luodaksesi kaikki vierasavainrajoitukset (nyt voit).

7) Valmis! Olet siirtänyt tietokannan uudesta SQL-palvelimesta vanhaan, vaikka se katsottiin mahdottomaksi. Lisäksi siirto tapahtuu vain puolitoista kertaa hitaammin kuin tiedonsiirtonopeus verkon yli, ts. melko nopea.

8) Siivoamme jälkemme (poista linkitetty palvelin käytöstä):

EXEC sp_droplinkedsrvlogin "LinkedServerUser", tyhjä; sp_dropserver "LinkedServerAlias";
Menetelmän rajoitukset.

1) Käyttämällä samankaltaista menetelmää, se ei onnistu siirtämään taulukoita, joissa on XML-tyyppisiä sarakkeita.
Varmasti on monia muita rajoituksia, tk. tietokanta, jonka siirrän samalla tavalla, ei käyttänyt monia SQL-palvelimen ominaisuuksia. Voit kirjoittaa rajoituksista kommentteihin, ja lisään ne artikkeliin.

Kiitos huomiostasi! Toivottavasti se auttaa jotakuta.

Tietokannan siirrolla tarkoitamme palvelimen vaihtamismenettelyä InterBase sekä sarjanumeron kasvattamisen että pienentämisen suuntaan sekä toiseen käyttöjärjestelmään tai laitteistoalustaan ​​vaihtamiseen. Jotkut lähteet viittaavat tietokannan siirtomenettelyyn nimellä muuttoliike.

Tällä hetkellä käytössä olevat versiot InterBase 4.x:stä 6.x:ään ja kuudennessa versiossa tietokanta voidaan luoda murteella 1 tai murteella 3. Yleensä siirtyminen nuoremmasta versiosta InterBase vanhempaan versioon ei vaadita erityistoimenpiteitä ja tietokannat toimivat normaalisti, mutta käyttäjä ei voi käyttää vanhemman version tarjoamia lisäpalveluita. Jos tietokannan siirtoprosessi on valmis, lisäpalveluita on saatavilla. Mitä tulee version 6.x murteisiin, joitain tietotyyppejä tulkitaan eri tavoin. Esimerkiksi aiemmissa versioissa InterBase ja murteen 1 versiossa 6.x yksi päivämäärätyyppi on määritelty Päivämäärä, jonka arvo sisältää ensin päivämäärän ja sitten kellonajan. Murteen 3 versiossa 6.x on määritelty kolme tyyppiä - Aikaleima, joka vastaa täsmälleen tyyppiä Päivämäärä, määritelty aikaisemmissa versioissa; tyyppi Päivämäärä, joka sisältää vain päivämääräarvot ja tyypin Aika, joka sisältää aika-arvot.

Tietokannan siirtoa suoritettaessa päivämäärätyypin automaattinen korvaaminen suoritetaan vain määritelmissä verkkotunnuksia. Metatiedon päivämäärätyyppi korvataan käsin.

Jokainen käyttöjärjestelmä tulkitsee jokaisen tietotyypin omalla tavallaan. Palvelinta asennettaessa InterBase mikä tahansa versio, se on määritetty sopivaa käyttöjärjestelmää ja laitteistoa varten.

Siten jokainen tietokanta on "sidottu" palvelinversioon InterBase, käyttöjärjestelmään ja laitteistoympäristöön.

Tämä selittää tarpeen suorittaa tietokannan siirtäminen.

Yllä olevasta käy selväksi, että tietokannasta luodaan varmuuskopio parametrin mukaan Kuljetettava aiheuttaa versiotietojen sisällyttämisen varmuuskopiotiedostoon InterBase käyttöjärjestelmä ja laitteistoympäristö, jossa tietokanta luotiin ja sitä käytettiin.

Kun tietokantaa siirretään toiselle henkilökohtaiselle tietokoneelle, palvelimelle InterBase lukee varmuuskopiotiedoston ja muuntaa tietotyypit oikein tarvittaessa ja tekee asetukset uudelle versiolle InterBase käyttöjärjestelmä ja laitteistoympäristö.

On pidettävä mielessä, että on mahdollista päivittää vain seuraavaan versioon. InterBase sekä nouseviin että laskeviin suuntiin.

Kun siirrät tietokannan kaksi tai kolme uudempaa (tai alemman) versiota, sinun on suoritettava siirtomenettely jokaiselle keskitason versiot ІМегВазе.

Murteen vaihtamiseksi (esimerkiksi ensimmäisestä kolmanteen) sinun on joko luotava tietokanta uudelleen tai käytettävä apuohjelmaa y / іх.

Tietokannan siirtoprosessin algoritmi

a. Luo tietokannan varmuuskopiotiedosto. Tiedosto luodaan jollakin edellä mainituista tavoista. On suositeltavaa tarkistaa, onko varmuuskopiotiedosto luotu oikein. Tätä varten ota tietokanta käyttöön samassa tietokoneessa eri hakemistossa ja tarkista sen toimivuus.

b. Luo kopiotiedosto rekisteröidyistä käyttäjistä palvelimelle InterBase. Muista, että käyttäjätiedot on tallennettu tiedostoon isc4.gdb palvelimella InterBase ja itse tietokannassa. Tiedoston kopioiminen iscA.gdb voit käyttää samaa apuohjelmaa gbak.

Esimerkki 12.7. Tietokannan rekisteröityjen käyttäjien tiedoston kopioiminen.

gbak -b -käyttäjä SYSDBA -salasana pääavain C: IBServeisc4.gdb C: isc4.gdk

v. Asenna palvelin uudelleen InterBase tai vaihda toiseen henkilökohtaiseen tietokoneeseen. Kun olet asentanut palvelimen uudelleen henkilökohtaiseen tietokoneeseen (tai vaihtanut toiseen henkilökohtaiseen tietokoneeseen), tarvitset tiedoston iscA.gdb palauttaa samalla apuohjelmalla gbak.

Tämä on tärkeää muistaa, kun päivität uudempaan versioon InterBase kaikki asiakkaat rekisteröityneet seuraavaan alempaan versioon InterBase, toimii hyvin (mutta ilman lisäominaisuuksia), ja vanhemmissa - epävakaa.

Tällaisille asiakkaille on suositeltavaa asentaa asiakasosa uudelleen InterBase asiakkaiden henkilökohtaisilla tietokoneilla.

Esimerkki 12.8. Tietokannan rekisteröityjen käyttäjien tiedoston siirto.

gbak -с -user SYSDBA -salasana pääavain C: isc4.gdk C: isc4.gdb

Esimerkit 12.7 ja 12.8 tarkoittavat, että versiota vaihdetaan InterBase yhdellä tietokoneella.

d. Palauta (siirrä) tietokanta jollakin edellä kuvatuista menetelmistä.

Yllä oleva algoritmi toimii luotettavasti versiota päivitettäessä InterBase. Jos sinun on pienennettävä versionumeroa InterBase, tämän toiminnon suorittamiseksi sinulla on oltava kaksi henkilökohtaista tietokonetta: ensimmäinen - jossa on toimiva tietokanta vanhemmassa versiossa InterBase, toinen - asennetun palvelimen kanssa InterBase alempi versio. Aloitamme prosessin tietokannan varmuuskopion luomiseksi (algoritmin kohta "a") toisesta tietokoneesta. Tämä luo varmuuskopiotiedoston alemman version. Mutta seuraavat vaihtoehdot ovat mahdollisia:

  • vanhemmassa versiossa InterBase tietokannan luomisen ja käytön aikana ei käytetty mekanismeja, jotka puuttuvat nuoremmasta versiosta InterBase, sitten tietokannasta luodaan täysi työkopio sivuversiossa InterBase",
  • tietokanta käytti vanhemman version alkuperäisiä mekanismeja InterBase, sitten saadaan kopio tietokannasta ja loki löydetyistä virheistä. Ja virheet tuskin palautettaessa tietokantaa alemmassa versiossa InterBase täytyy korjata käsin.

Tietokannan luotettavan toiminnan varmistamiseksi on välttämätöntä tarjota sama versio ja murre palvelimesta InterBase ja asiakaspuoli InterBase jokainen asiakas.

Kaikkien versioiden asiakkaat InterBase, toisin kuin dialect 3 -version 6.x kanssa työskentelevillä asiakkailla, heillä ei ole pääsyä:

Avainsanoihin:

CURRENTDATE CURRENTTIME CURRENT_ TIMESTAMP COLUMN

AIKALEIMA

Lainattuihin tunnisteisiin.