I recently set up SQL Server 2014 Express on my computer. During the installation process I merely selected Windows authentication, assuming I would be able to create other accounts later. I tested several things with C# using integrated authentication.
The problem arose when I attempted to use an account. I logged in using Windows authentication to change the sa password in SQL Server Management Studio. But when I attempt to so, and close the dialog, open it again, then the password is back to the 15 character default which I do not know. Enforce Policy is not on and I have no idea what might be causing this...
You need to check if you've enabled mixed mode authentication by:
right click on Server name after you've logged in as a windows user
Click Properties
Click Security
Check that the 'SQL Server and Windows Authentication mode' option is selected.
Then you can change the password for sa by going expanding the Server item and going to Security -> Logins -> Right click on sa -> Click Properties
Change the password here and CLICK OK.
Log out, log back in as sa, after selecting SQL Server Authentication just above where you enter the user name.
Related
I am trying to create a login in SQL Server Management Studio. I was successful in the creation, but after that I can't login in it. I will leave the steps below
Fixed the problem. Solution
Check your server Properties --> Security --> Server authentication
If SQL Server and Windows Authentication mode selected you will be fine.
If not, Follow steps below:
Right-click on your server
Go to option Security
Check the option "SQL Server and Windows Authentication mode"
Click on Ok button
Restart SQL Express Service ("Windows Key" on keyboard and write "Services", and then Enter key)
After SQL services restarted, you should be able to login with user and password
These are the steps to take to create a login:
Click right on database ,choose security , choose SQL with Windows authentication and Both failed....
Restart SQL Server service
Create database
Create login and a sign the name of database to the user from choosing "Default Database"
Be sure you a sign to user mapping database
Server name :
if local choose the name of computer name that you choose from first if you do not know choose from drop list of server name to see what available name
if you have a ip static put the server name like that :000.00.00.00\\SQLSERVER2019,1433, name and password.
I have installed SSMS (v17.1), created a new login at Security -> Logins, changed mode on the server (server: OWNER) to mixed mode. But the username/password combination doesn't seem to work. New Database Query -> SQL Server Authentication -> enter username/password and get error: Cannot connect to OWNER. Login failed for user 'myusername'. HELP!
According to Change Server Authentication Mode when the authentication mode is changed the server has to be restarted. Until restart SQL Server is still using Windows only authentication mode and that is what we can read is SQL Server error log as the reason of 18456 "login failed for user (...)"
I got this to work by following the instructions here: https://serverfault.com/questions/422269/where-can-i-find-the-user-in-this-iis-error-login-failed-for-user-iis-appool-w
All I did was create a user on the database, named IIS APPPOOL\DefaultAppPool, and a login, also named IIS APPPOOL\DefaultAppPool, using Windows authentication, and pointed the user at the login and it worked. Frankly, I'm still not sure why my custom SQL Server user didn't work, but at least I can move forward with my project.
Originally, I can connect to localhost in SQL Server through Windows authentication. But after I changed the login password of PC, I can't. Could you please help me figure out why?
Not too much information provided... but that is common issue for many users.
Check the server account name in the SQL Server Configuration Manager. If you run it under your account, you have to change the password for that service and restart it, or change it to use LocalSystem account.
Open CMD (Ctrl+r) input "services.msc"
Right Click SQL Server (Your Instance) - Properties
Click Tab Log On
Fill this account : your user login
Fill password : your user password, then confirm password then Ok.
Back to services Right click your SQL Server [Instance Name] - Start (picture 1)
Try re-login using windows account at SSMS
When running tomcat 7 as a windows service I can connect SQLServer with SQLServer Authentication but when connecting through Windows Authentication it seems to fail.
From what I know process running under windows services are user independent and run under a user named "SYSTEM" . Is there a way I can add SYSTEM to SQLServer users ?
Every thing seems to work if I run the code via Eclipse i.e. Under a user process.
You need to add a new Login of your Machine (Machine where your service is running) on MS SQL Server machine.
For example your are on domain "DomainName" and your hostname is "MachineName", you need to add a new Login "DomainName\MachineName$" on SQL Server. Note the $ sign at the end indicates that this is a computer name.
Follow the Steps below to add a new login on MS SQL Server:
Open SQL Server Management Studio and Login as 'sa' user.
Open Security -> Logins
Right Click on Logins and New Login...
Enter the Login name "DomainName\MachineName$" in General Tab
Select Windows Authentication radio box
Select tab "Server Roles" and check the box against "sysadmin"
OK and then Restart your SQL Server Service.
I've forgotten my sa password and already disabled windows authentication mode.
How can I reset SQL Server sa password with disabled windows authentication
tnx in advance
New best way: Use PowerShell. Reset-SqlSaPassword allows administrators to regain access to local or remote SQL Servers by either resetting the sa password, adding sysadmin role to existing login, or adding a new login (SQL or Windows) and granting the login sysadmin privileges. Windows administrator access is required.
This is accomplished by stopping the SQL services or SQL Clustered Resource Group, then restarting SQL via the command-line using the /mReset-SqlSaPassword paramter which starts the server in Single-User mode, and only allows Reset-SqlSaPassword to connect.
Once the service is restarted, the following tasks are performed:
Login is added if it doesn't exist
List item
Login is enabled
Login is added to sysadmin role
Login is unlocked
If login is a Windows User, an attempt is made to ensure the account exists
If login is a SQL Login:
A secure password prompt will appear
Password policy is set to off
SQL Server authentication is set to Mixed Mode
In order to make this script as portable as possible, System.Data.SqlClient and Get-WmiObject are used (as opposed to requiring the Failover Cluster Admin tools or SMO). If using this function against a remote SQL Server, ensure WinRM is configured and accessible. If this is not possible, run the script locally. Works on x86 and x64.
I had the same problem. Tried googling it and all the standard solutions didn't work so I had to get creative. Essentially my problem was that the SA account was disabled, also the system was set to only allow login by windows authentication, and finally the administrator account in windows also was not a member of the sysadmin role. So all the normal suggestions kept giving me permission denied errors (because I didn't have permissions to alter what other posts were telling me I should alter).
My solution is documented below, only apply the parts you need:
Stage 1: - Get SSMS working in single user mode
Open Sql server configuration manager (SSCM)
Click on SQL Server Services
Right click on SQL Server (MSSQLSERVER) and click properties
Click on the advanced tab
Find "Startup Parameters" and add the following
"-m;" at the beginning or ";-m" at the end (note the semi-colons but without quotes)
be careful to not add any white spaces as the parser is very picky
Press ok
Right click again and press restart
If you get any problems with the service not starting, verify step 5.
Stage 2: Part 1: - Enabling SQL Server and Windows Authentication mode
Start SSMS again.
This time when SSMS starts it will start in Single user mode which gives you full access.
Login with the usual windows account as before.
Right click on the server node (the very first / topmost node) and choose properties.
Click on Security
Under "Server authentication" click on "SQL Server and Windows Authentication mode" if its not already selected.
Click ok
Stage 2: Part 2: - Adding yourself into the sysadmin role
Click on "Security" and then "Server Roles"
Right click on "sysadmin" role
In the window that pops up, click add at the bottom.
In the window that pops up, click browse
Find your user and click the checkbox beside the name.
Click ok - this will return you to window in step 4 which will now have your user(s) in the lower box.
Click ok - this will return you to the window in step 3 which will add your user(s) to the role members list.
Click ok. - Congrats, you now have all the rights of the SA user.
Stage 2: Part 3: Altering the SA Password and enabling the account
Double Click on Security.
Double Click on Logins.
Right click on SA and choose properties.
Change and confirm the password fields (But don't press ok yet).
Click on the Status tab.
Click on Enabled.
Click ok
This is the process for resetting any users password (for a sysadmin).
At this stage you should close SSMS.
Stage 3: Restarting SSMS in multi user mode.
Follow the steps taken in Stage 1 and simply remove the -m;
Stage 4: Trying on your bigger shoes.
At this stage you should be able to enable or disable the SA account from your login and change its password, also you should be able to enable or disable the ability to login with SQL Server authentication. Test these to ensure you have necessary rights.
Notes: Some taught should go into doing this. I feel that a sysadmin account should be the first thing setup once you setup a new SQL server instance.
Some people recommend removing the SA account (Personally, I recommend just putting a really strong password on it). As long as you have an account with sysadmin this is fine but someone must have an account with sysadmin access. This account should not be named Admin or some variant thereof like God for obvious reasons. Also avoid names such as your business name and combinations of either etc.
As regards to enabling or disabling sql server authentication that's a debate I'll leave for the DB admins.
Hope you find this helpful.
If you lost sa password and dont have windows authentication login,then sa password can be reset by following steps-:
1.Start SQL Server in single user mode.
(a) open sql server configuration manager
(b) Select your instance and click properties,and set -m of -f parameter in
enter image description here startup parameter.
(c) Click ok,and then restart SQL service .
2.Now all the users who are a member of the host’s local administrator group can connect to SQL Server instance and they will gain the privileges of server level role sysadmin which helps us to recover SA password.
3.Run SSMS (Sql Server Management Studio) as administrator,and login by windows authentication.
4.Now select security tab and select logins and find 'sa' user and select properties,and reset desired password.
5.Then again restart SQL SERVER INSTANCE by right clicking on it.
enter image description here
6.Now sa password has been reset.
7.Now remove -f or -m parameter from SQL Server Configuration startup parameters.enter image description here
8.Again restart SQL SERVER SERVICE by right clicking on instance in configuration manager.
9.Now you have successfully reset sa password of SQL Server and check it by running SSMS and set SQL Server authentication mode in management studio.
Simple steps for SQL Server 2008+, which no longer have Admin group added by default.
From command line (as a Win admin):
net stop MSSQLSERVER
net start MSSQLSERVER /m /f
ssms
Here (in the launched SSMS) you can create additional sysadmins, change the sa password. Then back to the command shell:
net stop MSSQLSERVER
net start MSSQLSERVER
Here is a step by step 5 minute video on how to reset the SysAdmin password using either SQL Server Authentication or Windows Authentication
https://www.youtube.com/watch?v=GOvbjo1tlYo
The basic steps is also to start SQL Server in Single User Mode, then adding a new SysAdmin user. The basic steps highlighted in the video is as follows
Start Single User Mode Step by Step
SQL Server Configuration Manager - Make sure to enable NamedPipes/TCP Locally
List the Services
a. net start
b. services.msc
Stop the Service - net stop [SQL-SERVICENAME]
Start Single User Mode
a) net start [SQL-SERVICENAME] -m"SQLCMD"
b) "C:\Program Files\Microsoft SQL Server\MSSQL14.SQL1\MSSQL\Binn\sqlservr.exe" -sSQL1 -m"SQLCMD"
SQLCMD -S [SQL INSTANCE]
sqlcmd - Login
a) SQL User - CREATE LOGIN [name] WITH PASSWORD='password'; GO
b) Windows User - CREATE LOGIN [domainName\login_name] FROM WINDOWS; GO
sqlcmd
a) SP_ADDSRVROLEMEMBER name,'SYSADMIN'; GO
b) Confirm - SELECT name FROM syslogins; GO;
sqlcmd - exit