The error appears to be this:
ERROR: An error occurred: Folder with default data must exist.
Here are my steps to recreate.
I have read How to Copy Kentico Instance to a Local Machine? and followed all of its steps. It did not resolve my issue. Kentico keeps wanting me to do "Step 1 - Database Instance," and when I go through those steps, I receive the above error.
Here are the steps I took:
Database
- Backup the LIVE database.
- Restore it locally.
- Add the appropriate server logins and database users.
This is how I add the Server Login
USE [master]
GO
CREATE LOGIN [myUser] WITH PASSWORD=N'myPassword',
DEFAULT_DATABASE=[master],
CHECK_EXPIRATION=OFF,
CHECK_POLICY=OFF
GO
ALTER SERVER ROLE [sysadmin] ADD MEMBER [myUser]
GO
Here is how I configure my database user
CREATE USER [myUser] FOR LOGIN [myUser] WITH DEFAULT_SCHEMA=[dbo]
GO
Here are the assigned database roles
GO
ALTER ROLE [db_owner] ADD MEMBER [myUser]
GO
ALTER ROLE [db_ddladmin] ADD MEMBER [myUser]
GO
ALTER ROLE [db_datareader] ADD MEMBER [myUser]
GO
ALTER ROLE [db_datawriter] ADD MEMBER [myUser]
GO
ALTER ROLE [db_owner] ADD MEMBER [myUser]
GO
ALTER ROLE [db_owner] ADD MEMBER [myUser]
GO
ALTER ROLE [db_owner] ADD MEMBER [myUser]
GO
ALTER ROLE [db_datareader] ADD MEMBER [myUser]
GO
ALTER ROLE [db_datawriter] ADD MEMBER [myUser]
GO
ALTER ROLE [db_owner] ADD MEMBER [myUser]
GO
Code Base
- Checkout the existing code base locally.
- Setup IIS to host the existing code base.
web.config
Change the connection string to point at my local SQLExpress
<add name="CMSConnectionString"
connectionString="Persist Security Info=False;
database=MyKentico;
server=.\SQLEXPRESS;
user id=myUser;
password=myPassword;
Current Language=English;
Connection Timeout=240;" />
hosts
Add the following entry:
127.0.0.1 ca.myKentico.local
Result
When I go to ca.myKentico.local, the following screen appears.
So, I click Next, and the following screen appears.
Next.
At this point, there is an error message at the bottom of the screen.
ERROR: An error occurred: Folder with default data must exist.