The account which runs the SQL Server instance doesn't need admin rights on the computer and neither does the account which will manage the SQL Server instance. If you plan on creating databases within the instance you'll need to make sure that you have sysadmin rights within the instance but this isn't related to the OS rights at all. The person doing the install will need to make sure that they give you the rights within the database instance that you need before they leave.
The person doing the install that has admin rights will need to enable TCP/IP on the instance as that does require admin rights to do.
Could not find database engine startup handle error means SQL Server installation was able to install SQL Server services but when installation is trying to start SQL Server services its failing.
A simple solution I mentioned In This Technet Article is
Please go to SQL Server configuration manager and locate the SQL Server services
Right click on SQL Server express service and select properties and change startup account to Local System and select apply then OK. This will start services with Local system account privilege.
Certain reasons which can cause this error.
The account which user selected on Server Configuration page window ( during installation) is somehow not able to bring SQL Server database engine services online. Either is lacks privilege or it is corrupted. During installation of database engine services SQL Server tries to bring online database services as a internal process but due to startup account either corrupt or not having appropriate privileges it fails to do so and ultimately installation fails.
Other reason is when installation fails first time due to some reason and user uninstall failed installation from add remove program, the un-installation leaves account in broken state so any further attempt to install flashes this error message.
The reason can be also that SQL Server installation was successful in installing SQL Server and its services but due to some other limitation in system or other system related errors SQL Server is not able to come online.
In Your case reason is
2015-02-08 19:55:06.16 spid14s Error: 17190, Severity: 16, State: 1.
2015-02-08 19:55:06.16 spid14s Initializing the FallBack certificate failed with error code: 1, state: 20, error number: 0.
2015-02-08 19:55:06.16 spid14s Unable to initialize SSL encryption because a valid certificate could not be found, and it is not possible to create a self-signed certificate.
2015-02-08 19:55:06.16 spid14s Error: 17182, Severity: 16, State: 1.
To solve this Either start SQL Server service account with Local System or Create a new local account having admin privileges on the local machine and try starting SQL Server service with that account. This Blogs.msdn article says such error can come if account profile is corrupt
As you are already aware running SQL Server service with account having admin privileges is not advised. In such case for time being you can run the account with local system but you can use Configure Windows Service Account and Permissions to create account with minimum privileges.
EDIT:
FCB::Open failed: Could not open file
E:\sql12_main_t.obj.x86Release\sql\mkmastr\databases\mkmastr.proj\MSDBData.mdf for file number 1. OS error: 2(The system cannot find the file
specified.).
2015-02-09 10:42:45.12 spid8s Error: 5120, Severity: 16, State:
101.
2015-02-09 10:42:45.12 spid8s Unable to open the physical file
"E:\sql12_main_t.obj.x86Release\sql\mkmastr\databases\mkmastr.proj\MSDBData.mdf".
Operating system error 2: "2(The system cannot find the file
specified.)".
2015-02-09 10:42:45.12 spid8s Error: 17207, Severity: 16, State:
1.
As per below logs SQL Server is searching for msdb file at location
E:\sql12_main_t.obj.x86Release\sql\mkmastr\databases\mkmastr.proj\
Can you manually move both msdb data file and log file to above location. I know this is not your desired location but let first SQL Server come online then we can use alter database command and change location to what ever suits you. To me this is bug and is happening because SQL Server is unable to ,somehow, decide the location of msd files and so choosing random location.
Revert if this does not works
Best Answer
I suggest just writing a simple .NET console app to do just that. It can accept parameters for "ConnectionString" and "Query". This will be flexible enough to use in various situations.
Usage would be:
UPDATE:
I have created a project on GitHub to host a more functional / complete version of the code shown above. The code on GitHub will be updated over time whereas the code here will not be updated (since that is really not the purpose of this site). The repository URL for Simple SQL Exec (renamed, to avoid confusion, from "SimpleSqlCmd" as it is shown above):
https://github.com/SqlQuantumLeap/SimpleSqlExec