Table des matières
Veuillez noter : Ce guide s'applique uniquement à PDM Professional utilisant SQL Standard. PDM Standard ne peut utiliser que SQL Express, qui n'offre pas ces options.
Découvrez notreGuide de sauvegarde standard de SQL PDMpour plus d'informations sur votre environnement si vous utilisez PDM Standard.
Les tâches SQL et les plans de maintenance créent des flux de travail pour les tâches nécessaires au maintien de votre base de données optimisée, sauvegardée régulièrement et exempte d'incohérences.
« Mais pourquoi ai-je besoin de créer des plans de sauvegarde spécifiques à SQL ? »De nos jours, cela semble superflu puisque vous sauvegardez probablement déjà l'intégralité de votre serveur avec un seul outil. Si vous avez lu notre article…Guide de la liste principale des sauvegardes PDMVous avez probablement déjà compris pourquoi une capture instantanée ne suffit pas à garantir la conservation des données en cas de panne du serveur PDM. Grâce à l'utilisation de la base de données SQL par PDM, une restauration à partir d'une capture instantanée peut vous laisser avec une base de données en cours de transaction, voire corrompue.
De plus, le fichier journal des bases de données n'est pas tronqué (complété, compressé et enregistré physiquement) tant qu'une sauvegarde SQL n'est pas effectuée. Sans sauvegarde, le journal continuera de croître jusqu'à saturer le disque. Les sauvegardes sont essentielles pour préserver l'espace disque. Les instantanés, quant à eux, ne sont pas compatibles avec SQL : ils n'interrompent pas l'activité de la base de données et ne tronquent pas les journaux, ce qui peut s'avérer problématique en pleine procédure de reprise après sinistre.
Les plans et les tâches de maintenance configurés via SQL Server Maintenance Studio vous permettront d'automatiser cette action. Des sauvegardes régulières et fréquentes de votre base de données vous permettront de récupérer vos données en cas de panne.
Il existe deux façons de configurer des sauvegardes dans SQL :
Plans de maintenance (SQL 2022 et versions antérieures) :Dans SQL 2022 et versions antérieures,Services d'intégration SQL Server (SSIS)Le module était facilement sélectionnable lors de l'installation de base. SSIS inclut la section Plans de maintenance.SQL Server Management Studio (SSMS).Pour SQL Server 2022 et les versions antérieures, nous recommandons les plans de maintenance.
Tâches (SQL 2025 et versions ultérieures) :Avec SQL Server 2025 et versions ultérieures, SSIS n'est plus un composant essentiel et son intégration à votre installation nécessite quelques manipulations avec Visual Studio. Cela s'explique principalement par le fait que Microsoft relègue progressivement les plans de maintenance au rang de solutions « héritées », incitant ainsi les entreprises à les abandonner. Bien que très fiables et faciles à utiliser, les plans de maintenance peuvent manquer d'évolutivité pour les environnements plus vastes ou plus complexes. C'est pourquoi, en prévision de l'avenir, nous voulons offrir aux utilisateurs la possibilité de pérenniser leurs configurations dès maintenant, tout en assurant la sauvegarde sécurisée de leurs bases de données Vault.
Pour utiliser l'une ou l'autre de ces options, vous devrez avoirSQL Server Management Studio (SSMS)installé. Si vous ne l'avez pas fait, vous pouvezObtenez-le ici.
Vous devrez également vous assurer que l'agent SQL Server est en cours d'exécution sur le serveur SQL afin de pouvoir traiter les tâches requises.
L'assistant de planification de la maintenance inclut des plans de base prédéfinis, mais la création manuelle de plans offre une plus grande flexibilité d'exécution.
De plus, lors de la mise en œuvre d'un plan de maintenance SQL Server :










Les tables de la base de données Vault contiennent des index, ce qui garantit des recherches efficaces. Ces index sont automatiquement mis à jour par SQL Server à chaque modification (insertion, mise à jour ou suppression) des données sous-jacentes. Avec le temps, et en raison de la croissance des données, les index peuvent se fragmenter. La mise à jour et la mise à jour des index permettent de remédier aux cas de fragmentation plus importante. Ce plan de maintenance améliore ainsi les performances de recherche, de navigation et des autres interactions avec File Vault.










La valeur par défaut est «C:\Program Files\Microsoft SQL Server\MSSQL##.MSSQLSERVER\MSSQL\Backup«
DÉCLARER @FilePath NVARCHAR(500);
DÉCLARER @DateSuffix NVARCHAR(50);
-- Obtenir la date et l'heure actuelles au format AAAAMMJJ
DÉFINIR @DateSuffix = FORMAT(GETDATE(), 'yyyMMdd');
-- Construire le chemin d'accès complet au fichier avec le suffixe de date et d'heure
DÉFINIR @FilePath = '[Chemin]\[Nom du coffre-fort]_'+ @DateSuffix +'.bak';
-- Sauvegarder en utilisant SQL dynamique
SAUVEGARDER LA BASE DE DONNÉES [Nom du coffre]
SUR DISQUE = @FichierChemin
AVEC INIT;
Une fois la configuration de l'étape terminée, cliquez sur OK pour revenir à la page principale des étapes. Répétez l'opération pour chaque base de données.
Après avoir ajouté une étape pour chaque base de données de votre environnement (il vous en faut au moins deux : une pour chaque coffre-fort et une pour ConisioMasterDb), vous devrez ajouter une étape pour nettoyer les anciens fichiers de sauvegarde. Une seule étape suffit pour effectuer ce nettoyage, car elle capture tous les fichiers « .bak » du dossier désigné.
-- Supprimer les fichiers de sauvegarde de plus de 30 jours
DÉCLARER @cutoff DATETIME;
DÉFINIR @cutoff = DATEADD(DAY, -30, GETDATE());
EXEC xp_delete_file 0, N'[chemin]', N'bak', @cutoff, 1;

Une fois la configuration de l'étape terminée, cliquez surD'ACCORDpour retourner au menu principalMesurespage.

Il est conseillé de créer une tâche distincte pour la reconstruction et la réorganisation des index, car chaque tâche ne peut suivre qu'une seule planification pour toutes les étapes. Nous recommandons d'effectuer au moins des sauvegardes quotidiennes, mais la reconstruction et la réorganisation des index pourraient entraîner des problèmes de performance si elles étaient exécutées trop fréquemment. En général, il est préférable de ne pas faire la maintenance des index plus d'une fois par semaine. Une fois par mois suffit toutefois pour la plupart des environnements.

/* Script officiel de maintenance de l'index SOLIDWORKS (KB QA00000123139)
Vérifie la fragmentation de chaque index et agit en fonction de seuils :
- Moins de 5 % : Aucune mesure prise
- Entre 5 % et 30 % : Réorganisation (opérations allégées et en ligne)
- Au-dessus de 30 % : Reconstruction (reconstruction complète)
Ne traite que les index de plus de 1000 pages (la maintenance des petits index n'est pas rentable).
USAGE [Nom du coffre-fort]
DÉCLARATION
@id int,
@dbname SYSNAME,
@cmd1 nvarchar(max)
DÉFINIR @dbname = DB_NAME();
SI OBJECT_ID('tempdb..#work_table') N'EST PAS NUL, SUPPRIMER LA TABLE #work_table
CRÉER LA TABLE #table_de_travail
(
Tâche int IDENTITÉ (1,1) PAS NULL,
Nom de l'objet sysname,
Nom d'index sysname,
Nom du schéma sysname,
IndexFragment flottant
)
DÉFINIR @Cmd1= N'UTILISER ['+ @dbname + N'] ;
INSÉRER DANS #work_table
SÉLECTIONNER
o.name AS objectName,
i.name AS indexName,
s.name AS nom_schéma,
p.avg_fragmentation_en_pourcentage
À partir de sys.dm_db_index_physical_stats (DB_ID(), NULL, NULL, NULL, null) AS p
INNER JOIN sys.objects AS o ON p.object_id = o.object_id
INNER JOIN sys.schemas AS s ON s.schema_id = o.schema_id
INNER JOIN sys.indexes AS i ON p.object_id = i.object_id
ET i.index_id = p.index_id
OÙ p.page_count > 1000
ET p.avg_fragmentation_en_pourcentage > 5
ET p.index_id > 0
ET s.name <> ''sys'';'
EXÉCUTER sp_executesql @CMD1
DÉCLARATION
@Nom_objet nom_système,
@index_name sysname,
@SchemaName sysname,
@Fragmentation flottante,
@command1 nvarchar(max),
@command2 nvarchar(max),
@tâche int
DÉFINIR @tâche = 1
TANT QUE (1=1)
COMMENCER
SÉLECTIONNER
@Object_name = ObjectName,
@index_name = IndexName,
@SchemaName = SchemaName,
@Fragmentation = IndexFragm
DEPUIS #table_de_travail
OÙ tâche = @tâche
SI @@ROWCOUNT = 0
RUPTURE
SI (@Fragmentation > 30) -- Reconstruire
COMMENCER
DÉFINIR @Command1 = N'UTILISER [' + @Dbname + '] ; MODIFIER L'INDEX [' + @index_name + '] SUR '
+ @SchemaName + '.[' + @Object_name + ']'
+ N' RECONSTRUCTION AVEC (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF,
EN LIGNE = DÉSACTIVÉ, AUTORISER_VERROUILLAGE_LIGNE = ACTIVÉ, AUTORISER_VERROUILLAGE_PAGE = ACTIVÉ)'
IMPRIMER (@Commande1)
EXEC sp_executesql @command1
FIN
SI (@Fragmentation > 5 ET @Fragmentation < 30) -- Réorganiser
COMMENCER
DÉFINIR @Command2 = N'UTILISER [' + @Dbname + ']; MODIFIER L'INDEX [' + @index_name + '] SUR '
+ @SchemaName + '.[' + @Object_name + ']'
+ N' RÉORGANISER AVEC (LOB_COMPACTION = ACTIVÉ)'
IMPRIMER @commande2
EXEC sp_executesql @command2
FIN
DÉFINIR @tâche = @tâche + 1
FIN
SUPPRIMER LA TABLE #table_de_travail

Si GoEngineer est votre revendeur et que vous avez des questions ou des problèmes, veuillez communiquer avec notre service client.Équipe de soutienPour obtenir de l'aide supplémentaire, n'hésitez pas ! On aimerait bien vous aider.
De plus, vous pouvez vous joindre auCommunauté GoEngineerparticiper aux conversations, créer des messages sur le forum et répondre aux questions des autres SOLIDWORKSutilisateurs.
Note de la rédaction : Cet article a été initialement publié en janvier 2025 et a été mis à jour par notre équipe technique pour plus de précision et d'exhaustivité.
SOLIDWORKS PDM 2025 - Nouveautés
Propriétés de configuration dans les fiches de données SOLIDWORKS PDM
SOLIDWORKS PDM - Mise en œuvre des révisions de travail
Comment créer des listes dynamiques dans les fiches de données standard SOLIDWORKS PDM
À propos de Rowan Gray
Rowan Gray est chef d'équipe du support technique chez GoEngineer, spécialisé dans SOLIDWORKS PDM et la gestion des données/de cycle de vie connexe. Ils sont chez GoEngineer depuis 2020 et possèdent une solide expérience en TI qui leur permet de mieux soutenir les clients face à tout problème pouvant survenir dans leur environnement PDM. Pendant leur temps libre, ils aiment jouer aux jeux vidéo, faire du crochet et gâter leurs animaux de compagnie.
Recevez directement dans votre boîte de réception notre vaste gamme de ressources techniques.
Vous pouvez vous désabonner à tout moment.