Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Comment copie l'întegrité de ma base de données

5 réponses
Avatar
Don Juan
Bonjour
J'aimerais savoir quele est la meilleur manière de copier toute la base de
données d'une manière optimale.
Pour l'instant j'utilise un script qui copie tous les fichiers mais j'ai un
message d'erreur parce que le fichier est toujours utilisé par le service
SQL Server, donc, je tue le processus, je copie manuelement est après
j'attache ma base de données.
Je pense qu'il devrai avoir une manière de faire cela...
Merci d'avance.

5 réponses

Avatar
GLB - Gilles LE BARBIER
Salut Don :-)

Le plus sur ce sont les BACKUP RESTORE !!

NON ?

Gilles



"Don Juan" a écrit dans le message de news:

Bonjour
J'aimerais savoir quele est la meilleur manière de copier toute la base de
données d'une manière optimale.
Pour l'instant j'utilise un script qui copie tous les fichiers mais j'ai
un message d'erreur parce que le fichier est toujours utilisé par le
service SQL Server, donc, je tue le processus, je copie manuelement est
après j'attache ma base de données.
Je pense qu'il devrai avoir une manière de faire cela...
Merci d'avance.




Avatar
GLB - Gilles LE BARBIER
désolé pour fote de frape :-)


"GLB - Gilles LE BARBIER" a écrit
dans le message de news: e%
Salut Don :-)

Le plus sur ce sont les BACKUP RESTORE !!

NON ?

Gilles



"Don Juan" a écrit dans le message de news:

Bonjour
J'aimerais savoir quele est la meilleur manière de copier toute la base
de données d'une manière optimale.
Pour l'instant j'utilise un script qui copie tous les fichiers mais j'ai
un message d'erreur parce que le fichier est toujours utilisé par le
service SQL Server, donc, je tue le processus, je copie manuelement est
après j'attache ma base de données.
Je pense qu'il devrai avoir une manière de faire cela...
Merci d'avance.







Avatar
Vuillermet Jacques
", je tue le processus" : c'est un peu dur.

Détache (sp_detach_db), copie et ré-attache (sp_attach_db).

A+
Jacques.

"Don Juan" a écrit dans le message de news:

Bonjour
J'aimerais savoir quele est la meilleur manière de copier toute la base de
données d'une manière optimale.
Pour l'instant j'utilise un script qui copie tous les fichiers mais j'ai


un
message d'erreur parce que le fichier est toujours utilisé par le service
SQL Server, donc, je tue le processus, je copie manuelement est après
j'attache ma base de données.
Je pense qu'il devrai avoir une manière de faire cela...
Merci d'avance.




Avatar
Fred BROUARD
Don Juan a écrit :
Bonjour
J'aimerais savoir quele est la meilleur manière de copier toute la base de
données d'une manière optimale.
Pour l'instant j'utilise un script qui copie tous les fichiers mais j'ai un
message d'erreur parce que le fichier est toujours utilisé par le service
SQL Server, donc, je tue le processus, je copie manuelement est après
j'attache ma base de données.
Je pense qu'il devrai avoir une manière de faire cela...
Merci d'avance.




Avec la manière dont vous faîtes vous n'avez AUCUNE gantantie que la
base sera dans un état cohérent.

En effet des transactions non terminées au moment ou vous tuez le
serveur entraînerons des anomalies. Dans ce cas, le risque est grand que
la base soit incohérente et définitivement irrécupérable !!!
Une base de données est prévue pour fonctionner 24h/24, 7j/4 avec un
taux de disponibilité de 99,999 %, c'est à dire au plus 5 minutes
d'interruption par an.
Il existe donc différentes procédures pour manipuler à chaud une base de
données :

1) la sauvegarde, qui se fait avec la commande BACKUP et produit un
fichier. Ce fichier permet de restaurer l'état de la base de données à
l'aide de la commande RESTORE. pendant ces opérations, la base reste
active et les utilisateurs peuvent travailler

2) le détachement/rattachement à l'aide des procédures stockées
sp_detach_db et sp_attach_db ou sp_attach_siglefile_db. Elles possèdent
l'inconvénient majeur d'obliger l'arrêt de la base et donc les
utilisateurs ne peuvent plus travailler sur cette dernière.

Comme vous le voyez, en aucun cas le serveur n'a besoin d'être arrêter.
Arrêter un serveur SQL est non seulement quelque peu risqué, mais
surtout particulièrement contre performant, car ce qui est en cache est
perdu !

A +

--
Frédéric BROUARD, MVP SQL Server, expert bases de données et langage SQL
Le site sur le langage SQL et les SGBDR : http://sqlpro.developpez.com
Audit, conseil, expertise, formation, modélisation, tuning, optimisation
********************* http://www.datasapiens.com ***********************
Avatar
Don Juan
Merci... :)

"Fred BROUARD" wrote in message
news:Ouue$
Don Juan a écrit :
Bonjour
J'aimerais savoir quele est la meilleur manière de copier toute la base
de données d'une manière optimale.
Pour l'instant j'utilise un script qui copie tous les fichiers mais j'ai
un message d'erreur parce que le fichier est toujours utilisé par le
service SQL Server, donc, je tue le processus, je copie manuelement est
après j'attache ma base de données.
Je pense qu'il devrai avoir une manière de faire cela...
Merci d'avance.




Avec la manière dont vous faîtes vous n'avez AUCUNE gantantie que la base
sera dans un état cohérent.

En effet des transactions non terminées au moment ou vous tuez le serveur
entraînerons des anomalies. Dans ce cas, le risque est grand que la base
soit incohérente et définitivement irrécupérable !!!
Une base de données est prévue pour fonctionner 24h/24, 7j/4 avec un taux
de disponibilité de 99,999 %, c'est à dire au plus 5 minutes
d'interruption par an.
Il existe donc différentes procédures pour manipuler à chaud une base de
données :

1) la sauvegarde, qui se fait avec la commande BACKUP et produit un
fichier. Ce fichier permet de restaurer l'état de la base de données à
l'aide de la commande RESTORE. pendant ces opérations, la base reste
active et les utilisateurs peuvent travailler

2) le détachement/rattachement à l'aide des procédures stockées
sp_detach_db et sp_attach_db ou sp_attach_siglefile_db. Elles possèdent
l'inconvénient majeur d'obliger l'arrêt de la base et donc les
utilisateurs ne peuvent plus travailler sur cette dernière.

Comme vous le voyez, en aucun cas le serveur n'a besoin d'être arrêter.
Arrêter un serveur SQL est non seulement quelque peu risqué, mais surtout
particulièrement contre performant, car ce qui est en cache est perdu !

A +

--
Frédéric BROUARD, MVP SQL Server, expert bases de données et langage SQL
Le site sur le langage SQL et les SGBDR : http://sqlpro.developpez.com
Audit, conseil, expertise, formation, modélisation, tuning, optimisation
********************* http://www.datasapiens.com ***********************