Tergum notitia transferens ex nova versione MS SQL Servo ad versionem antiquiorem

erectus

Semel, ut cimex effingere, tergum datorum productionis indigebat.

Miror, in sequentibus limitibus cucurri;

  1. Tergum database in versione facta est SQL Servo 2016 et non competit meis SQL Servo 2014.
  2. In labore meo computatorium, OS adhibitum erat Fenestra 7ut non update SQL Servo usque ad versionem MMXVI
  3. Productum suffultum pertinebat maioris systematis cum architectura legatum arcte copulatum et etiam aliis productis et basibus locutus est, ut diutissime posset eam ad aliam stationem explicandam.

Datum supra, ad conclusionem venit tempus solutionum fusarum non notarum.

Restoring notitia ex tergum

Ego uti elegit apparatus virtualis VirtualBox Oracle DΓ³minum cum Fenestra 10 (potes imaginem capere pro Edge browser hic). SQL Server 2016 in apparatus virtualis constitutus est et applicationis datorum ex tergum restituta est (disciplinam).

Vestibulum accessum ad SQL Servo in virtualis apparatus

Deinceps oportuit aliquos gradus capere ut ab extra SQL Servo accedere possit:

  1. Pro firewall, regulam adde petitiones portuum omit 1433.
  2. Optandum est ut aditus servo non per fenestras authenticas veniat, sed per SQL login et tesseram utens (facilius est accessum constituere). Nihilominus, in hoc casu, meminisse debes ut authenticas SQL in SQL Servo praebere possit.
  3. In user occasus in SQL Servo in tab User Mapping specificare ad user partes restaurata database db_securityadmin.

Data translationis

Profecto notitia ipsa translatio duobus gradibus consistit;

  1. Schema datorum translatio (tabulae, sententiae, rationes repositae, etc.)
  2. Notitia ipsa transferendo

Schema data translatio

Sequenti operationes perficimus:

  1. eligens Tasks -> Scripts Generale ad portatilem basim.
  2. Res elige quae debes transferre vel relinquere valorem default (hoc in casu, scripta pro omnibus obiectis datorum creabuntur).
  3. Specificare occasus pro salute scriptionis. Commodissimum est scripturam in uno codice unico servare. Deinde, in casu defectus, non necesse est omnes gradus iterum repetere.

Scriptum semel servatum esse potest currere in originali SQL Servo (vetus versio) ad basis debitam creandam.

monitio: Post scripturam exsecutioni mandare debes correspondentiam inter uncinis datorum ex tergum et datorum scriptorum inspicere. In casu meo, nulla erat institutio pro COLLATE in scriptione, quae ad defectionem perduxit cum notitias transferendo et saltando cum tympano ad recreandum database utens scripto suppleto.

Data translationis

Priusquam notitias transferas, perscriptio omnia restrictiones datorum inactivare debes:

EXEC sp_msforeachtable 'ALTER TABLE ? NOCHECK CONSTRAINT all'

Data translatio fit per magus notitia import Negotium -> Import Data in SQL Servo, ubi positum est database a scripto creatum:

  1. Specificare nexum occasus ad fontem (SQL Server 2016 in machina virtuali). Ego fonte data SQL Servo Totius Client et praefatae SQL authenticas.
  2. Specificare nexum occasus pro destinatione (SQL Server 2014 in machina exercitus).
  3. Deinceps statuimus destinata. Omnes eligendae non legitur solum obiecti (exempli gratia sententiae non opus est seligi). Cum additional optiones, eligere "Permitte in columnas identitatis immittere"si ea adhibeantur.
    monitio: si, cum plures mensas legere conantes, res suas ponat "Permitte in columnas identitatis immittere" Proprietas iam apposita saltem una tabularum excerptarum, dialogus indicabit proprietatem iam omnibus tabulis delectae appositis. Haec res confundi potest et errores migrationis ducere.
  4. translationis initium habemus.
  5. Reddenda coercitione tenendo;
    EXEC sp_msforeachtable 'ALTER TABLE ? CHECK CONSTRAINT all'

Si qui errores inciderunt, occasus coercemus, datorum cum erroribus creatos dele, illud e scripto re-creemus, emendas et notitias translationis repetemus.

conclusio,

Hoc munus admodum rarum est et tantum ob supra limitationes occurrit. Communissima solutio est ad upgrade SQL Servo vel iungo cum servo remoto, si applicatio architecturae permittit. Nemo tamen a codice legato immunis est et manus pravae evolutionis pauperum. Spero te hac eruditione non egere, sed, si quid adhuc opus est, multum temporis ac nervos adiuvabit. Gratias tibi ago pro attente!

Index fontium usus

Source: www.habr.com