New-NAVDatabase
New-NAVDatabase
Creates a new Microsoft Dynamics NAV database from a backup file.
Syntax
Parameter Set: __AllParameterSets
New-NAVDatabase [-FilePath] <String> -DatabaseName <String> [-DatabaseInstance <String> ] [-DatabaseServer <DatabaseServer> ] [-Force] [-ServiceAccount <String> ] [-Timeout <Int32> ] [ <CommonParameters>]
Parameter Set: MultipleDestinations
New-NAVDatabase [-FilePath] <String> -DatabaseName <String> -DataFilesDestinationPath <String> -LogFilesDestinationPath <String> [-DatabaseInstance <String> ] [-DatabaseServer <DatabaseServer> ] [-Force] [-ServiceAccount <String> ] [-Timeout <Int32> ] [ <CommonParameters>]
Parameter Set: SingleDestination
New-NAVDatabase [-FilePath] <String> -DatabaseName <String> -DestinationPath <String> [-DatabaseInstance <String> ] [-DatabaseServer <DatabaseServer> ] [-Force] [-ServiceAccount <String> ] [-Timeout <Int32> ] [ <CommonParameters>]
Detailed Description
Use the New-NAVDatabase cmdlet to restore a database from a backup file. You can specify the location of transaction log files and data files.
You can use this cmdlet to restore a database to a remote SQL Server instance.
Parameters
-DatabaseInstance<String>
The name of the SQL Server instance to which the database is restored.
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
True (ByPropertyName) |
Accept Wildcard Characters? |
false |
-DatabaseName<String>
The name to use for the restored database.
Aliases |
none |
Required? |
true |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
True (ByPropertyName) |
Accept Wildcard Characters? |
false |
-DatabaseServer<DatabaseServer>
The name of the computer that is running SQL Server.
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
True (ByPropertyName) |
Accept Wildcard Characters? |
false |
-DataFilesDestinationPath<String>
Destination path for data files of the restored database. The path can be a UNC path or a path on the local computer.
You can specify either a directory path or a file path.
If you specify a directory path, then the location for data files is changed but the original file names are preserved.
If you specify a file path, then both the location and the file name of the data file is changed. You can specify a file path only if the database that you restore contains a single data file. If you specify a file path and the database contains multiple data files, then the restore operation fails.
If you do not specify the following parameters, then the database files are restored to their original locations: DestinationPath, DataFilesDestinationPath, LogFilesDestinationPath
If you specify the local computer for the DatabaseServer parameter, then if the directory that you specify does not exist, it is created automatically.
Aliases |
none |
Required? |
true |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
True (ByPropertyName) |
Accept Wildcard Characters? |
false |
-DestinationPath<String>
Destination path for both data files and transaction log files of the restored database. The path can be a UNC path or a path on the local computer.
You must specify a directory path. If you specify a file path, then the restore operation fails. The path can be a UNC path or a path on the local computer.
If you do not specify the following parameters, then the database files are restored to their original locations: DestinationPath, DataFilesDestinationPath, LogFilesDestinationPath.
If you specify the local computer for the DatabaseServer parameter, then if the directory that you specify does not exist, it is created automatically.
Aliases |
none |
Required? |
true |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
True (ByPropertyName) |
Accept Wildcard Characters? |
false |
-FilePath<String>
Path to the database backup file.
Aliases |
none |
Required? |
true |
Position? |
1 |
Default Value |
none |
Accept Pipeline Input? |
True (ByValue, ByPropertyName) |
Accept Wildcard Characters? |
false |
-Force
Specifies that you want to overwrite the existing database during the restore operation.
If you use this parameter, then the existing database is overwritten, regardless of whether the backup file contains a backup of the existing database or a different database.
If the database that you specify in the DatabaseName parameter exists but the backup file in the location that you specify in the FilePath parameter does not contain a backup of the existing database that you specified, then you must use the Force parameter to overwrite the database with the backup.
If the database that you specify in the DatabaseName parameter exists and the backup file contains a backup of the existing database that you specified, then you do not need to use the Force parameter to restore the database.
If you specify data files or transaction log files for a different database from the database that you specify in the DatabaseName parameter, then the restore operation fails. In this case, the Force parameter does not force the database to be overwritten.
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
false |
Accept Wildcard Characters? |
false |
-LogFilesDestinationPath<String>
Specifies that you want to overwrite the existing database during the restore operation.
If you use this parameter, then the existing database is overwritten, regardless of whether the backup file contains a backup of the existing database or a different database.
If the database that you specify in the DatabaseName parameter exists but the backup file in the location that you specify in the FilePath parameter does not contain a backup of the existing database that you specified, then you must use the Force parameter to overwrite the database with the backup.
If the database that you specify in the DatabaseName parameter exists and the backup file contains a backup of the existing database that you specified, then you do not need to use the Force parameter to restore the database.
If you specify data files or transaction log files for a different database from the database that you specify in the DatabaseName parameter, then the restore operation fails. In this case, the Force parameter does not force the database to be overwritten.
Aliases |
none |
Required? |
true |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
True (ByPropertyName) |
Accept Wildcard Characters? |
false |
-ServiceAccount<String>
Logon account that runs the Microsoft Dynamics NAV Server instance. This account is given the appropriate permissions to the database when you run the cmdlet. For more information, see Provisioning the Microsoft Dynamics NAV Server Account in the MSDN Library at https://go.microsoft.com/fwlink/?LinkID=281888.
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
True (ByPropertyName) |
Accept Wildcard Characters? |
false |
-Timeout<Int32>
The time (in seconds) to wait before terminating an attempt to execute a command on SQL Server, such as reading content or restoring the database from a .bak file.
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
false |
Accept Wildcard Characters? |
false |
<CommonParameters>
This cmdlet supports the common parameters: -Verbose, -Debug, -ErrorAction, -ErrorVariable, -OutBuffer, and -OutVariable. For more information, see about_CommonParameters.
Inputs
The input type is the type of the objects that you can pipe to the cmdlet.
None or System.String
You can pipe a string that contains one of the following to the cmdlet: LogFilesDestinationPath, FilePath, DestinationPath, DataFilesDestinationPath, DatabaseInstance, or DatabaseName.
Outputs
The output type is the type of the objects that the cmdlet emits.
None
This cmdlet does not generate any output.
Examples
-------------------------- EXAMPLE 1 --------------------------
This example restores a database and preserves the original file names and locations.
C:\PS>New-NavDatabase C:\Backups\backup1.bak –DatabaseName NewDatabase –Verbose | fl
VERBOSE: NavCommand.BeginProcessing
VERBOSE: NavCommand.ProcessRecord
VERBOSE: Restoring database 'NewDatabase' from backup file: 'C:\Backups\backup1.bak'...
VERBOSE: Restore of database 'NewDatabase' from file 'C:\Backups\backup1.bak' has been completed successfully.
DatabaseName : NewDatabase
DatabaseInstance : MSSQLSERVER
DatabaseServer : server1.cronus.com
VERBOSE: NavCommand.EndProcessing
-------------------------- EXAMPLE 2 --------------------------
This example restores a database, moves transaction log files and data files to the new location 'C:\newdestination', and preserves the original file names.
C:\PS>New-NAVDatabase C:\Backups\backup.bak -DestinationPath c:\newdestination -DatabaseName NewDatabase -Verbose
VERBOSE: NavCommand.BeginProcessing
VERBOSE: NavCommand.ProcessRecord
VERBOSE: Restoring database 'NewDatabase' from backup file: 'C:\Backups\backup.bak'...
VERBOSE: Restore of database 'NewDatabase' from file 'C:\Backups\backup.bak' has been completed successfully.
DatabaseName DatabaseInstance DatabaseServer
------------ ---------------- --------------
NewDatabase MSSQLSERVER server1.cronus.com
VERBOSE: NavCommand.EndProcessing