Back up the database and library

You should back up your database and library (file attachments) frequently to insure against data loss.

Do not attach copied database MDF/LDF files to another PDXpert Server. Each database has a unique database identifier to ensure client cache coherence. The PDXpert Server service automatically assigns the new identifier is when it restores the database backup (.PDXZ or .BAK) file. Attaching the database by other means – such as SQL Server Management Studio, PowerShell or Windows command line – will damage your data unless the database identifier dbo.PDXpertInfo.DatabaseId is also updated and the PDXpert Server service is restarted.

Microsoft recommends backing up a SQL Server database to an internal fixed drive. The operation may fail – possibly without any warning – if you select a compressed, network-mapped, or external volume. Confirm that a backup that's saved to the selected device can be restored.

The selected backup location must have sufficient free disk space for the backup file. The server disk also must have free disk space to build the temporary backup file.

Do not add files to the server's \Data folder or its subfolders. Unrecognized files may interfere with proper operation or may be deleted without warning. If the folder has been moved, the actual name may not be \Data but perhaps \PLM-Data, \PDXpert, or something else.

PDXpert releases are not backward compatible. A backup made by a specific PDXpert Server release can only be restored into the same, or higher, PDXpert Server. If it's restored into a higher release, the backup file is automatically upgraded to the PDXpert Server's release.

Microsoft SQL Server databases are not backward compatible.

  • A database backup can only be restored into the same, or higher, SQL Server instance. For example, SQL Server 2017 (version 14.0) can accept a 14.0 database, as well as an older SQL Server 2016 (13.0) database.

  • SQL Server can't "downgrade" a higher-level database backup. For example, restoring a backup file from SQL Server 2019 (version 15.0) into an earlier SQL Server 2017 (14.0) will fail.

The backup file name includes information about the server machine name, backup date, PDXpert release, and SQL Server version: {machine}-{date}-{release}-{version}.pdxz  When restoring the backup database, the file name's SQL Server version is compared to the installed instance to warn of incompatibility.

When restoring a database into a more recent SQL Server version, the restored database stays at the older SQL Server compatibility level. For example, if the backup file was created using SQL 2014 (level 120) and restored to SQL 2019 (level 150), the restored database stays at 120 until upgraded using the ALTER DATABASE command. Upgrading the compatibility level gives improved T-SQL language features. Always check the Microsoft and PDXpert release notes, and test your Transforms collection members. For details, search the web: view or alter database compatibility level

Using the manual backup tool §

On the PDXpert Application Server window:

  1. Select the Manage page.

  2. In the Maintenance area, click the Backup... button to open the Save Backup As dialog.

  3. There are two backup formats available:

    • The default backup format is Database with Library (*.pdxz). This is a simple way to save your database and all library files into a single compressed ("zip") file. The file contains the SQL Server backup (.BAK) file, an XML manifest file, and the library file attachments.

      Files that are downloaded from the internet or compressed in other operating systems (like Linux or MacOS) may not work well in Windows. Before saving a compressed file attachment in PDXpert, always expand and then re-compress these files using Windows File Explorer or another Windows compression tool. See the File tab help topic. Or, use only the Database without Library (*.bak) backup format.

      The PDXZ format is convenient as you're starting out, but it's intended only to support smaller systems. Use a commercial backup solution before the \Database and \Library subfolders reach 1GB. See Automating your backup, below.

    • The alternative backup format is Database without Library (*.bak). This saves the "raw" SQL Server database without including the library files. This is a much faster backup, and is useful for maintenance, but is incomplete without the file attachments.

      To have a complete backup, you must use Windows or a backup tool to copy all of your library files that are stored in the \Library subfolder.

      Copy the \Library folder contents after the database backup is done.

      If more than 2GB of files are in the \Database and \Library subfolders, you can only save the SQL Server database without the library files. This will be shown by the DATABASE ONLY - NO LIBRARY (*.bak) format type.

  4. Choose the location where you want your backup file to be saved, and click the Save button.

    Secure your backups to prevent unauthorized access to archival data. The backup database file does not carry any access restrictions, and includes your software license key. It may be loaded into a different PDXpert instance, and the database element can be extracted and loaded into any SQL Server database engine.

    The PDXZ file is constructed in the \Temp folder. Temporary files are normally deleted after the PDXZ file is transferred to the selected location. If a backup error (such as disk full) prevents automatic deletion, all temporary files can be manually deleted after all users exit the PDXpert client application.

To restore the backup, see the Restore data from a backup help topic.

Automating your backup §

Your server backup software must be compatible with SQL Server. Consumer-grade backup utilities may not be capable of correctly backing up a SQL Server database, and can even damage or delete your original database. Search the web for sql server backup software. Some less-capable tools may back up the SQL Server database only, and you may need a separate utility for backing up the files contained in the library folder.

It's very important to have a scheduled backup procedure that automatically saves the database and the library to a safe archive. As your database and file library grow, the compressed .PDXZ backup file will take longer to finish, consume more system resources, and be increasingly vulnerable to file system errors.

Data that must be backed up §

There are two essential PDXpert data elements that you must protect:

  1. The SQL Server database in which all of the product data is maintained (for example, files like PDXpertDB.mdf and PDXpertDB_log.ldf), and
  2. A Windows folder, called the \Library folder, that contains all files that have been attached to PDXpert's items.

Both of these data elements work together. Therefore, they must be backed up as a set.

Finding the data to be backed up §

The options are:

  • Back up the entire server computer.
  • Back up the entire disk drive that contains the PDXpert \Data folder.
  • Within the disk drive, back up the entire content of the \Data folder.
  • Within the \Data folder, back up only the content of these two folders:

    • SQL Server database files: \Database
    • PDXpert library files: \Library

The disk drive and the location of the data folder are shown on Manage.

Server data folder location

Automation practices §

Regularly assess your backup & recovery risks, procedures and technologies. Develop and maintain a robust data backup and disaster recovery plan in consultation with your IT specialist. Always validate the results of a new or revised backup procedure.

Your Windows operating system may have the necessary software utilities to make a reliable backup procedure. There are also many commercial tools available to perform this important task.

When developing your data backup and disaster recovery plan, consider these practices:

  • Schedule backups during quiet periods: backup jobs consume a lot of I/O resources.
  • Ensure that the backup interval reflects how quickly your data ages, and balance this interval with users' time to reproduce lost data after the most recent backup's been restored.
  • Avoid propagating viruses by scanning file attachments before saving them into the library.
  • Some antivirus software can interfere with the PDXpert Application Server, and should be tested for problems while users perform normal database and library file tasks.
  • Do not use your production database/library disk as the primary backup device. Use a separate physical disk and not simply a partition on the same disk.
  • After a backup is complete, copy the backup file(s) from the primary backup drive to a secondary device. This secondary device should be secured, and logically and physically separate from the production network. Use disk-to-disk or disk-to-cloud technology for secondary backups. Avoid tape.
  • If you don't control your off-site storage location, consider encrypting your saved data.
  • To minimize downtime, ensure that off-site backups can be retrieved quickly.
  • Don't be too aggressive in purging old backups. In a very large historical file library, a monthly snapshot going back a few years may provide that one crucial file that was corrupted long ago but only recently discovered.
  • Periodically make sure that your hardware, particularly disk subsystem, is functioning properly.
  • Test the data integrity of your backup procedure by restoring the backup file(s) into a fresh configuration. Regularly validate that the backup procedure is making correct backup files.

Restoring a VSS backup §

When restoring an automated backup that uses the Volume Shadow Copy Service (VSS), stop the PDXpert Server service before copying the data into the data folders.

In this example, the VSS backup consists of all folders and files within a \Data\ folder.

  1. Ensure all users are logged out of the PDXpert client application.

  2. Restore the VSS backup data to a local temporary folder ("source location"). For example: E:\Temp\Data\

  3. On the server computer, open the PDXpert Application Server window. (See image above.)

    1. The VSS backup data will be copied to the data directory (the "target location"). Note the target location shown next to the Change Data Directory button. For example: D:\PDXpert\Data\

    2. Find the SQL Server instance name, as shown next to the Change Database Server button. This instance is typically named PDXPERT, and usually shown like .\PDXPERT.

      If your system uses a SQL Server Express LocalDB database instance, it'll be shown as (localdb)\MSSQLLOCALDB. This can be confirmed on the PDXpert Application Server's Information page, where the SQL Server information box will include LocalDB in the name.

    3. Close the PDXpert Application Server window.

  4. In the Windows Administrator Tools > Services window:

    1. Find and Stop the PDXpert Server service. If asked by the system, allow the PDXpert Filter Service to stop.

    2. Find and Stop the SQL Server (instance) service, where instance is the name of the PDXpert instance that you found in Step 2; for example, SQL Server (PDXPERT). Skip this step if your system is using SQL Server Express LocalDB.

  5. Copy the content of the VSS backup \Data\ folders from the source location to the target location.

  6. In the Administrator Tools > Services window: Start the PDXpert Server service.

    Do not start the PDXpert Filter service; it is started by the PDXpert Server service only when needed.

  7. Use the PDXpert client to show that the system is working as expected.

If the VSS backup doesn't contain all …\Data\ folders (for example, it contains only the essential …\Data\Database\ and …\Data\Library\ content), then use the Tools menu ➔ Index Status... command to re-index the restored data.

3002