restarting database while shrink [db] is still running I ran a shrink Database command on an SQL Server database to free up about 200GB of space, then mistakenly ran a large query select * from tbl where tbl is large, then tried to cancel that query through SSMS STOP button instead of kill. 

SQL Server is now stuck, CPU at max and I can't even log in. 

Is it safe to restart an SQL Server that is going through shrink db? Is there a chance I lose data? Or corrupt existing data? I don't think the select is an issue during restarts...
Restarting SQL Server is rarelly a good way to fix issue.

You can try to log as a dedicated admin (DAC connection) and then, you will see what is running and you may be able to kill some session.

Be aware that by killing a session, SQL will have to roll it back (which is single threaded) and there is no way to escape from this rollback. Sometime, the best solution may be to wait for it to complete. (You can kill the select as the rollback should be pretty quick)