Академический Документы
Профессиональный Документы
Культура Документы
Home > KB Articles > Lansweeper Maintenance > Moving your SQL Server database to a different
server or SQL Server instance
Lansweeper data, reports and settings are stored in a database, which is hosted in either Microsoft
SQL Compact or Microsoft SQL Server. If your database is hosted in SQL Server, you can move it to a
different machine or different SQL Server if at some point required. If it's hosted in SQL Compact,
moving just the database is not possible. SQL Compact databases can only be accessed by services
running locally on the server, so all Lansweeper components must be present on the same machine
and moved simultaneously when SQL Compact is used. If you are unsure which database server you
are running, browse to the following section of the web console: Configuration\Your Lansweeper
License
This article explains how to move *just* the database. If you are trying to move all components
(Lansweeper service, database and web console), follow these instructions instead. More
information on components and how they interact can be found here.
To move a Lansweeper database hosted in SQL Server to a different server or SQL Server instance,
do the following:
- Name: make sure this is something other than lansweeperdb, to avoid overwriting your existing
database.
- In the Options tab, you can tick Verify Backup When Finished to check the integrity of the backup
file.
4. Run the Lansweeper installer on your new database server and configure it exactly as
shown below. This will install a default Lansweeper database in the SQL Server instance
specified by you.
Don't try to manually create the database. Let the installer do this for you.
6. Execute the script below in SQL Server Management Studio to reset the lansweeperuser
SQL login used by the Lansweeper service and web console to connect to the
database. Replace what's marked in bold with the password you want to use for the
lansweeperuser login, leaving the single quotes in the script.
/* Makes sure there are no objects in the lansweeperuser schema, so the lansweeperuser SQL user
can be reset */
USE lansweeperdb
GO
DECLARE c_ALTSCHEMA CURSOR FOR
SELECT 'ALTER SCHEMA dbo TRANSFER lansweeperuser.'+name +';'
FROM sys.objects
WHERE SCHEMA_NAME(SCHEMA_ID) = 'lansweeperuser'
DECLARE @SQLStmt NVARCHAR(200)
OPEN c_ALTSCHEMA
FETCH NEXT FROM c_ALTSCHEMA INTO @SQLStmt
WHILE @@FETCH_STATUS = 0
BEGIN
EXEC(@SQLStmt)
FETCH NEXT FROM c_ALTSCHEMA INTO @SQLStmt
END
CLOSE c_ALTSCHEMA
DEALLOCATE c_ALTSCHEMA
GO
USE MASTER
GO
EXEC sp_addlogin 'lansweeperuser', 'lansweeperuserpassword', 'lansweeperdb', [English]
GO
USE lansweeperdb
GO
EXEC sp_grantdbaccess 'lansweeperuser', 'lansweeperuser'
GO
EXEC sp_addrolemember [db_owner], 'lansweeperuser'
GO
Don't skip this step! Restoring a database backup almost always corrupts the SQL user used by
the Lansweeper service and web console to connect to the database. If you don't reset the user, the
service and web console will be unable to connect to the database.
7. Run the following tool, found on the servers hosting your Lansweeper Server service and
web console:
9. Select the Data Source field, hit the Edit button and submit the name of your new SQL
Server instance.
10. Select the Password field, hit the Edit button and submit the same password you
previously used in the database script.
11. If the ConfigEditor tool has multiple tabs due to your server hosting multiple Lansweeper
components, select the other tab, click through any warnings and repeat the password
changing process.