Azure DevOps free tier max out, buying license for additional user

Azure Free tier is limited to 5 users. If you have connected Azure DevOps to Microsoft Azure then buying is really simple. To buy additional license, follow this;

Click on Organization Settings -> Billing

You would see your Azure subscription ID in Billing page;

As of this writing additional user will cost your $6/month.

How can I stop paying for users who aren’t actively using Azure DevOps?

If you have inactive users, stop paying for them by removing them or assigning them a free Stakeholder access level. Sort by Last Access to find users who haven’t accessed the organization recently. Find out how recently they got added by exporting the list of users and checking the Date Created column.

Last access

How do I see only my Azure DevOps charges?

Follow these steps to see only your charges for Azure DevOps.

  1. In the Azure portal, select Subscriptions > Cost analysis.
  2. Filter on Service name = Azure DevOps.Filter by service name

How much am I currently spending on Azure DevOps?

Azure DevOps charges daily, so the best way to see what you’re currently paying for Azure DevOps is to view by daily costs.

  1. In the Azure portal, select Subscriptions > Cost analysis.
  2. View by Daily costs.View by Daily costs

Resources

https://azure.microsoft.com/en-us/pricing/details/devops/azure-devops-services/

https://docs.microsoft.com/en-us/azure/devops/organizations/billing/billing-faq?view=azure-devops#multi-org-billing

How to Drop Orphan User in SQL Server (Msg 15138)

I am not able to drop a SQL user and keep getting this error message;

Msg 15138, Level 16, State 1, Line 5

The database principal owns a schema in the database, and cannot be dropped.

There is an orphan user who owns a schema or role and can not be dropped until user is detached from schema/role.

First see if there is any role associated and remove it;

-- Query to get the orphan users
EXEC sys.sp_change_users_login 'REPORT'

-- Query to get the user associated Database Role
SELECT 
	DBPrincipal_2.name as [Role], DBPrincipal_1.name as [OWNER] 
FROM sys.database_principals as DBPrincipal_1 
INNER JOIN sys.database_principals as DBPrincipal_2 
	ON DBPrincipal_1.principal_id = DBPrincipal_2.owning_principal_id 
WHERE DBPrincipal_1.name = 'ADDUSER'

--Query to fix the role
ALTER AUTHORIZATION ON ROLE::[db_owner] TO [dbo]

SSMS STEPS: Object Explorer->Target Server->Target Database->Security->roles->Right click on database role. Change user name to your selected name or “dbo” and click OK.

Now fix the issue where we will transfer the ownership of the database role/schema to dbo.

----*** Query to get the user associated schema
select * from information_schema.schemata
where schema_owner = MyUser'

--Query to fix the error Msg 15138 on database schema
ALTER AUTHORIZATION ON SCHEMA::[MyDatabaseSchema] TO [dbo]

--Query to drop the user
DROP USER [MyUser]
GO

SSMS STEPS: Object Explorer->Target Server->Target Database -> Security->Schemas->Right Click on schema->Change user name to your selected name or “dbo”.

Schema and/or database role has been transferred to “dbo”. You are safe to drop the user.

Shortcuts to run window command with elevated permission

A common trick to run command in elevated permission is to right click and select Run As administrator. Other work arounds are;

  1. Press Ctrl+Shift+Esc to open the Task Manager. Click on File menu > Run new task. To open a command prompt window, type cmd. Remember to check the Create this task with administrative privileges check-box. Then hit Enter.
  2. You can also open an elevated command prompt from the Task Manager using CTRL Key.
  3. Simply open the Start Menu or Start Screen and start typing the command line. Next, hold the Shift and Ctrl keys, and then hit Enter to open the command line in an elevated command prompt.

FIND AND REPLACE using Regular Expression in SSMS

We can use Regular Expression to find and replace, valid with all versions of SSMS

  • Find what: {.+}
  • Replace with: ‘\1’,
  • Look in: Selection
  • Expand Find Option
  • Use: Regular expression (checked)

That regular expression indicates find everything and remember what we found Replace everything we found \1 by wrapping it with tic marks and a comma.

If you have more complex requirements, the right chevron next to the drop down arrow on Find what lists the regular expression dialect SSMS/Visual Studio understands

References

https://dba.stackexchange.com/questions/96371/applying-quotes-across-multiple-lines