[Windows Azure] Managing SQL Database using SQL Server Management Studio
Managing Windows Azure SQL Database using SQL Server Management Studio
You can use Windows Azure SQL Database Management Portal or the SQL Server Management Studio (SSMS) client application to administer your SQL Database subscriptions and create and manage associated logical servers and databases. The guidance below describes how to use Management Studio to manage SQL Database logical servers and databases. For information on how to use SQL Database connections in application code, see How to use Windows Azure SQL Database.
You can use either SQL Server 2012 or the SQL Server 2008 R2 version of Management Studio. Earlier versions are not supported.
This task includes the following steps:
- Step 1: Get SQL Server Management Studio
- Step 2: Connect to SQL Database
- Step 3: Create and manage databases
- Step 4: Create and manage logins
- Step 5: Monitor SQL Database using Dynamic Management Views
Step 1: Get Management Studio
Management Studio is an integrated environment for managing SQL databases. When managing databases on Windows Azure, you can use the Management Studio application installed with SQL Server or download the free SQL Server 2012 Management Studio Express (SSMSE) version. The steps below describe how to install SSMSE.
On the Microsoft SQL Server 2012 Express page, select the x86 version of Management Studio if you are running a 32-bit operating system, or x64 if you are running a 64-bit operating system. Click Download, and when prompted, run Setup.
Click New SQL Server stand-alone installation or add features to an existing installation and click OK.
Accept the license terms and click OK.
Click Install to install files required by SQL Server Setup.
On the Feature Selection screen, Management Tools - Basic is preselected. This is because you are running the installer for Management Studio. If you are running Setup for all of SQL Server Express, choose the Management Tools - Basic option, and click Next.
On the Error Reporting screen, you can optionally choose to send error reports to Microsoft. This is not required to use SSMSE. Click Next to start the installation.
When the installation is complete, you will see the Complete page. Click Close.
Step 2: Connect to SQL Database
Connecting to SQL Database requires that you know the server name on Windows Azure. You might need to sign in to the portal to get this information.
Sign in to the Windows Azure Management Portal.
In the left pane, click on SQL Databases.
On the SQL Databases home page, click SERVERS at the top of the page to list all of the servers associated with your subscription. Find the name of the server to which you want to connect and copy it to the clipboard.
Next, configure your SQL Database firewall to allow connections from your local machine. You do this by adding your local machines IP address to the firewall exception list.
On SQL Databases home page, click SERVERS and then click the server to which you want to connect.
Click Configure at the top of the page.
Copy the IP address in CURRENT CLIENT IP ADDRESS.
In the Configure page, Allowed IP Addresses includes three boxes where you can specify a rule name and a range of IP addresses as starting and ending values. For a rule name, you might enter the name of your computer. For the start and end range, paste in the IP address of your computer into both boxes, and then click the checkbox that appears.
The rule name must be unique. If this is your development computer, you can enter the IP address in both the IP range start box and the IP range end box. Otherwise, you might need to enter a broader range of IP addresses to accommodate connections from additional computers in your organization.
Click SAVE at the bottom of the page.
Note: There can be up as much as a five-minute delay for changes to the firewall settings to take effect.
You are now ready to connect to SQL Database using Management Studio.
On the taskbar, click Start, point to All Programs, point to Microsoft SQL Server 2012, and then click SQL Server Management Studio.
In Connect to Server, specify the fully-qualified server name as serverName.database.windows.net. On Windows Azure, the server name is an autogenerated string composed of alphanumeric characters.
Select SQL Server Authentication.
In the Login box, enter the SQL Server administrator login that you specified in the portal when creating your server in the format login@yourServerName.
In the Password box, enter the password that you specified in the portal when creating your server.
Click Connect to establish the connection.
On Windows Azure, each SQL Database logical server is an abstraction that defines a grouping of databases. The physical location of each database might be on any computer in the data center.
In previous versions, you had to connect directly to master when setting up the connection in Management Studio. This step is no longer necessary. Connections will now succeed based on the server name, authentication type, and administrator credentials.
Many of the SSMS wizards you can use for tasks like creating and modifying logins and databases on a SQL Server database are not available for SQL databases on Windows Azure, so you'll need to utilize Transact-SQL statements to accomplish these tasks. The steps below provide examples of these statements. For more information about using Transact-SQL with SQL Database, including details about which commands are supported, see Transact-SQL Reference (SQL Database).
Step 3: Create and Manage Databases
While connected to the master database, you can create new databases on the server and modify or drop existing databases. The steps below describe how to accomplish several common database management tasks through Management Studio. To perform these tasks, make sure you are connected to the master database with the server-level principal login that you created when you set up your server.
To open a query window in Management Studio, open the Databases folder, right-click on master, and then click New Query.
Click Execute to run the query.
Use the CREATE DATABASE statement to create a new database. For more information, see CREATE DATABASE (SQL Database). The statement below creates a new database named myTestDB and specifies that it is a Web Edition database with a maximum size of 1 GB.
CREATE DATABASE myTestDB
(MAXSIZE=1GB,
EDITION='web');Use the ALTER DATABASE statement to modify an existing database, for example if you want to change the name, maximum size, or edition (business or web) of the database. For more information, see ALTER DATABASE (SQL Database). The statement below modifies the database you created in the previous step to change the maximum size to 5 GB.
ALTER DATABASE myTestDB
MODIFY
(MAXSIZE=5GB,
EDITION='web');Use the DROP DATABASE Statement to delete an existing database. For more information, see DROP DATABASE (SQL Database). The statement below deletes the myTestDB database, but don't drop it now because you will use it create logins in the next step.
DROP DATABASE myTestBase;
The master database has the sys.databases view that you can use to view details about all databases. To view all existing databases, execute the following statement:
SELECT * FROM sys.databases;
In SQL Database, the USE statement is not supported for switching between databases. Instead, you need to establish a connection directly to the target database.
Many of the Transact-SQL statements that create or modify a database must be run within their own batch and cannot be grouped with other Transact-SQL statements. For more information, see the statement specific information available from the links listed above.
Step 4: Create and Manage Logins
The master database keeps track of logins and which logins have permission to create databases or other logins. Manage logins by connecting to the master database with the server-level principal login that you created when you set up your server. You can use the CREATE LOGIN, ALTER LOGIN, or DROP LOGIN statements to execute queries against the master database that will manage logins across the entire server. For more information, see Managing Databases and Logins in SQL Database.
Use the CREATE LOGIN statement to create a new server-level login. For more information, see CREATE LOGIN (SQL Database). The statement below creates a new login called login1. Replace password1 with the password of your choice.
CREATE LOGIN login1 WITH password='password1';
Use the CREATE USER statement to grant database-level permissions. All logins must be created in the master database, but for a login to connect to a different database, you must grant it database-level permissions using the CREATE USER statement on that database. For more information, see CREATE USER (SQL Database).
To give login1 permissions to a database called myTestDB, complete the following steps:
Refresh Object Explorer to view the myTestDB database that you just created. It should appear below the System Databases folder that contains master.
If you closed the connection, you can reconnect by selecting Connect Object Explorer on the File menu. Repeat the instructions in Step 2: Connect to SQL Database to connect to the database.
Right-click myTestDB database and select New Query.
Execute the following statement against the myTestDB database to create a database user named login1User that corresponds to the server-level login login1.
CREATE USER login1User FROM LOGIN login1;
Use the sp_addrolemember stored procedure to give the user account the appropriate level of permissions on the database. For more information, see sp_addrolemember (Transact-SQL). The statement below gives login1User read-only permissions to the database by adding login1User to the db_datareader role.
exec sp_addrolemember 'db_datareader','login1User';
Use the ALTER LOGIN statement to modify an existing login, for example if you want to change the password for the login. For more information, see ALTER LOGIN (SQL Database). The ALTER LOGIN statement should be run against the master database. Switch back to the query window that is connected to that database.
The statement below modifies the login1 login to reset the password. Replace newPassword with the password of your choice, and oldPassword with the current password for the login.
ALTER LOGIN login1
WITH PASSWORD ='newPassword'
OLD_PASSWORD ='oldPassword';Use the DROP LOGIN statement to delete an existing login. Deleting a login at the server level also deletes any associated database user accounts. For more information, see DROP DATABASE (SQL Database). The DROP LOGIN statement should be run against the master database. The statement below deletes the login1 login.
DROP LOGIN login1;
The master database has the sys.sql_logins view that you can use to view logins. To view all existing logins, execute the following statement:
SELECT * FROM sys.sql_logins;
Step 5: Monitor SQL Database using Dynamic Management Views
SQL Database supports several dynamic management views that you can use to monitor an individual database. Below are a few examples of the type of monitor data you can retrieve through these views. For complete details and more usage examples, see Monitoring SQL Database using Dynamic Management Views.
Querying a dynamic management view requires VIEW DATABASE STATE permissions. To grant the VIEW DATABASE STATE permission to a specific database user, connect to the database you want to manage with your server-level principle login and execute the following statement against the database:
GRANT VIEW DATABASE STATE TO login1User;
Calculate database size using the sys.dm_db_partition_stats view. The sys.dm_db_partition_stats view returns page and row-count information for every partition in the database, which you can use to calculate the database size. The following query returns the size of your database in megabytes:
SELECT SUM(reserved_page_count)*8.0/1024
FROM sys.dm_db_partition_stats;Use the sys.dm_exec_connections and sys.dm_exec_sessions views to retrieve information about current user connections and internal tasks associated with the database. The following query returns information about the current connection:
SELECT
e.connection_id,
s.session_id,
s.login_name,
s.last_request_end_time,
s.cpu_time
FROM
sys.dm_exec_sessions s
INNER JOIN sys.dm_exec_connections e
ON s.session_id = e.session_id;Use the sys.dm_exec_query_stats view to retrieve aggregate performance statistics for cached query plans. The following query returns information about the top five queries ranked by average CPU time.
SELECT TOP 5 query_stats.query_hash AS "Query Hash",
SUM(query_stats.total_worker_time), SUM(query_stats.execution_count) AS "Avg CPU Time",
MIN(query_stats.statement_text) AS "Statement Text"
FROM
(SELECT QS.*,
SUBSTRING(ST.text,(QS.statement_start_offset/2)+1,((CASE statement_end_offset
WHEN -1 THEN DATALENGTH(ST.text)
ELSE QS.statement_end_offset END- QS.statement_start_offset)/2)+1) AS statement_text
FROM sys.dm_exec_query_stats AS QS
CROSS APPLY sys.dm_exec_sql_text(QS.sql_handle)as ST)as query_stats
GROUP BY query_stats.query_hash
ORDER BY 2 DESC;
Additional Resources
- Introducing SQL Database
- Managing Databases and Logins in SQL Database
- Monitoring SQL Database using Dynamic Management Views
- SQL Database Provisioning Model
- Adding Users to your SQL Database
- Transact-SQL Reference (SQL Database)
[Windows Azure] Managing SQL Database using SQL Server Management Studio的更多相关文章
- 在 Windows Azure 虚拟机中使用 Microsoft SQL Server 安全功能
编辑人员注释:本文章由 SQL Server 团队高级项目经理 Sung Hsueh 撰写. SQL Server 的最新用法之一是利用 Microsoft 的 Windows Azure 基础结构服 ...
- [Windows Azure] How to Scale a SQL Database Solution
How to Scale a SQL Database Solution On Windows Azure, database scalability is synonymous with scale ...
- 【数据库-Azure SQL Database】SQL Server 如何将数据库备份到 Azure Storage
打开本地的 SQL Server Management Studio.首先创建 Credentials.命令如下: IF NOT EXISTS (SELECT * FROM sys.credent ...
- 在英文Windows操作系统上使用SQL Server Management Studio(SSMS)导入Excel 97-2003文件时报错:Failure creating file
今天在公司服务器上使用SQL Server Management Studio(SSMS)导入Excel 97-2003文件(.xls)时报错: Failure creating file. (Mic ...
- (译)Windows Azure的7月更新:SQL数据库,流量管理,自动缩放,虚拟机
Windows Azure的7月更新:SQL数据库,流量管理,自动缩放,虚拟机 今早我们释出一些很棒的Windows Azure更新.这些新的提升包括:SQL数据库:支持SQL自动导出和一个新的高级层 ...
- Sql Server系列:Microsoft SQL Server Management Studio模板资源管理器
模板资源管理器是Microsoft SQL Server Management Studio的一个组件,可以用来SQL代码模板,使用模板提供的代码,省去每次都要输入基本代码的工作. 使用模板资源管理器 ...
- [转]删除SQL Server Management Studio中保存的帐户信息
http://www.2cto.com/database/201208/149850.html 删除SQL Server Management Studio中保存的帐户信息 SQL Serve ...
- 如何分离数据库 (SQL Server Management Studio)
在 SQL Server Management Studio 对象资源管理器中,连接到 SQL Server 数据库引擎的实例上,再展开该实例. 展开“数据库”,并选择要分离的用户数据库的名称. 分离 ...
- How To : Create SQL Server Management Studio Addin
原文 How To : Create SQL Server Management Studio Addin Read the full and original article from Jon Sa ...
随机推荐
- Dubbo在开发中的一些常用配置
介绍Dubbo在开发中的一些常用配置,文中内容主要参考dubbo文档配置和示例两节,详细可移步访问 传送站 1. 属性配置方法及加载顺序 属性常用配置方法主要有三种: 第一种是通过启动时在虚拟机参数 ...
- Ubuntu登录Windows Server 2008r2 密码总是错误与NLA验证
日期:2013-05-22 经过一天的折腾,终于能够用Ubuntu登录Windows server 2008 R2 了. 寝室里面用小本子,装的ubuntu,实验室的服务器是win server0 ...
- 如何设置页面自动刷新第一篇?? servlet setHeader("refresh","2")
import java.io.IOException; import java.util.Random; import javax.servlet.ServletException; import j ...
- DPDK架构与特点(转)
from:http://www.cnblogs.com/mylinuxer/p/4277676.html DPDK架构与特点 当年在某公司实习的时候,当时老大给了我一份DPDK的文档,说是将来很有用, ...
- LAMP环境搭建实现网站动静分离[转]
目录: 1.环境概述 2.动静分离拓扑图 3.各服务器功能规划 4.各服务器基础环境配置 5.httpd安装配置 6.php安装配置及启用opcache加速功能 7.mysql安装配置 8.wordp ...
- Linux下使用Nexus搭建Maven私服
在开发过程中,有时候会使用到公司内部的一些开发包,显然把这些包放在外部是不合适的.另外,由于项目一直在开发中,这些内部的依赖可能也在不断的更新.可以通过搭建公司内部的Maven服务器,将第三方和内部的 ...
- C++项目參考解答:求Fibonacci数列
[项目:求Fibonacci数列] Fibonacci数列在计算科学.经济学等领域中广泛使用,其特点是:第一.二个数是1,从第3个数開始,每一个数是其前两个数之和.据此,这个数列为:1 1 2 3 5 ...
- java对象内存占用
一.前言想知道java对象在内存中的占用情况吗?感谢这位大神的无私分享. http://yueyemaitian.iteye.com/blog/2033046 二.原文的扩充1. 增加了代理jar包的 ...
- 训练深度学习网络时候,出现Nan 或者 震荡
出现Nan : 说法1: 说法2:说法3: 震荡 : 分析原因: 1:训练的batch_size太小 1. 当数据量足够大的时候可以适当的减小batch_size,由于数据量太大,内存不够 ...
- FileZilla FTP 登录 问题
1.一直报错220 (vsFTPd 3.0.2)-AUTH TLS 将加密方式选择为 “只是用普通FTP(不安全)”模式即可 2.服务器发回了不可路由的地址 “传输设置”,传输模式设置为主动.