2
Vote

Migration Wizard crashed on last step (logging into SQL Azure)

description

Reason: Usage of ";" in logon password
 
Resolution: Change logon password
Can be done with SQL Server Management Studio
ALTER LOGIN [AdminName] WITH PASSWORD = '[1234567!]'
 
Use Characters That Do Not Conflict With ODBC Connection Strings.
To avoid errors you should not use these ODBC connection string characters []{}(),;?*!@ in Login Name and Password.
 
After that everything runs smoothly
Tool worked perfect - Many Thx!
 
Complete Stacktrace:
System.ArgumentException was unhandled
Message=Keyword not supported: 'XXX;encrypt'.
Source=System.Data
StackTrace:
   at System.Data.Common.DbConnectionOptions.ParseInternal(Hashtable parsetable, String connectionString, Boolean buildChain, Hashtable synonyms, Boolean firstKey)
   at System.Data.Common.DbConnectionOptions..ctor(String connectionString, Hashtable synonyms, Boolean useOdbcRules)
   at System.Data.SqlClient.SqlConnectionString..ctor(String connectionString)
   at System.Data.SqlClient.SqlConnectionFactory.CreateConnectionOptions(String connectionString, DbConnectionOptions previous)
   at System.Data.ProviderBase.DbConnectionFactory.GetConnectionPoolGroup(String connectionString, DbConnectionPoolGroupOptions poolOptions, DbConnectionOptions& userConnectionOptions)
   at System.Data.SqlClient.SqlConnection.ConnectionString_Set(String value)
   at System.Data.SqlClient.SqlConnection.set_ConnectionString(String value)
   at System.Data.SqlClient.SqlConnection..ctor(String connectionString)
   at SQLAzureMWUtils.TargetProcessor.ExecuteSQLonTarget(Server targetServer, String targetDatabase, String collation, String edition, Int32 dbSize, AsyncUpdateStatus updateStatus, AsyncQueueBCPJob queueBCPJob, String sqlToExecute, Boolean bDropDatabaseIfExists)
   at SQLAzureMW.ScriptWizard.ExecuteSQLonTarget()
   at System.Threading.ThreadHelper.ThreadStart_Context(Object state)
   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
   at System.Threading.ThreadHelper.ThreadStart()
InnerException:

comments

ghuey wrote Jun 18, 2012 at 12:59 AM

Hi, thanks for the feedback. I will have to put a better catch in my code so that it does not crash and provide better feedback. I am glad you got it working though.

Thanks again,
George

dilettante wrote Feb 11 at 3:50 PM

Hi,

I had a similar issue. When my password ended with a semicolon -- abcd123; -- the login failed with an "incorrect password"-type error. It was particularly confusing because I could login with MS SQL Server Management Studio, but not with the migration tool (or for that matter, any of the other SQL tools we use).

When I removed the semicolon from my password, I could log in.

Would it be possible to allow semicolons/other special characters in passwords, or throw out an error explaining why it's a bad idea?

ghuey wrote Feb 11 at 9:27 PM

Hi,

Yes, I can and will fix this. But for now, if you put apostrophe (') around it, it should work. I.E. 'abcd123;'

Regards,
George

ghuey wrote Feb 11 at 9:58 PM

Ok, so that is not the best of ideas. It messes up my BCP commands. Let me work on this a little more.

Regards,
George

ghuey wrote Feb 11 at 10:32 PM

Hi,

Well, while I can fix my code, I am not so lucky with BCP. It seems that it does not like ; either.

I will continue to see if there is a way to escape the ; in BCP and if I find the solution, I will apply to SQLAzureMW.

For now, I would remove the ; until I can get this resolved.

Sorry,
George