❶ sql server2000 创建用户时有个默认数据库是什么意思
就是SQL server2000自动为你创建的数据库,不然的话你连接不了,一般连接数据库服务器,都需要指明连接到哪个数据库的,所以几乎所有的数据库服务器软件都是在安装的时候会自动创建一个默认的数据库的
❷ 怎么设置SQL数据库默认值(sql如何设置默认值)
//第一种写法:
MM_conn_STRING="Driver={SQLServer};server=(local);uid=sa;pwd=;database=infs;"
Setconn=Server.("ADODB.Connection")
conn.openMM_conn_STRING
SETRS=SERVER.("ADOBD.recordset")
SQL="SELECT*FROMTABLEORDERBYIDDESC"
RS.openSQL,CONN,3,3
//第二种写法:(DSN连接)
MM_conn_STRING="DSN=BBS;UID=SA;PWD=12345"
Setconn=Server.("ADODB.Connection")
conn.openMM_conn_STRING
SETRS=SERVER.("ADOBD.recordset")
SQL="SELECT*FROMTABLEORDERBYIDDESC"
RS.openSQL,CONN,3,3//3,3是修改握芹、局带删除、增加开桐皮芦关!
//第三种写法:
MM_conn_STRING_own="Driver={SQLServer};server=(local);uid=sa;pwd=11111;database=infs;"
Setconn=Server.("ADODB.Connection")
conn.openMM_conn_STRING_own
//第四种-这种方法用在ACCESS中
strconn="DRIVER=MicrosoftAessDriver(*.mdb);DBQ="_
&Server.MapPath("asp.mdb")
setconn=server.("adodb.connection")
conn.openstrconn
❸ 在SQL Server中出现 “无法打开用户默认数据库,登录失败” 是什么原因
无法打开用户默认数据库,登录失败,这也是SQL Server使用者常见的问题之一。在使用企业管
理器、查询分析器、各类工具毕蔽和应用软件的时候,只要关系到连接SQL Server数据库的时候,都有
可能会碰到此问题。
一、原因
登录帐户的默认数据库被删除。
二、解决方法:
(一)、使用管理员帐户修改此帐户的默认数据库
1、打开企业管理器,展开服务器组,然后展开服务器
2. 展开"安全性",展开登录仔差,右击相应的登录帐户,从弹出的菜单中选择,属性
3、重新选择此登录帐户的默认数据库
(二)、若没有其他管理员登录帐户,无法在企业管理器里修改,使用isql命令行工手戚州具
isql /U"sa" /P"sa的密码" /d"master" /Q"exec sp_defaultdb N'sa', N'master'"
如果使用Windows验证方式,使用如下命令行,将默认数据库改成非丢失的数据库:
isql /E /d"master" /Q"exec sp_defaultdb N'BUILTINAdministrators', N'master'"
❹ 如何设置SQL Server登录的默认数据库和权限。
sql server2005安全管理之用户、角色、架构 与 权限
2008-12-04 16:47
--打开数据库
Use databaseName
--创建角色
create role ProgramerRole
--用于创建表 存储过程 视图
grant create table,create procere,create view to ProgramerRole
--execute用以执行存储过程,alter用以创建、修改存储过程和视图,
--并可以新建立表,但不能修改表,但也可以删除表和对表改名了
grant select,insert,execute,alter on schema::dbo to ProgramerRole
--用于允许用户查看 显示估计的执行计划(081205)
grant showplan to ProgramerRole
--创建登录账号
--create login username with password='password'
--创建数据库用户
create user username for login username
--将用户TestUser添加到TestRole角色中
exec sp_addrolemember 'ProgramerRole','username '
--执行Sql Server Profiler是服务器级权限,所以在master库中授权
USE master;grant alter trace to auto;
注:据库引擎优化顾问必须由具有系统管理员权限的用户进行初始化。在具有系统管理员权限的用户对数据库引擎优化顾问进行初始化之后,任何是 db_owner 固定数据库角色成员的用户,都可以使用数据库引擎优化顾问来优化他们拥有的数据库上的表。
详优化物理数据库设计http://msdn.microsoft.com/zh-cn/library/ms191531(SQL.90).aspx
参考资料:
用户架构分离:http://msdn.microsoft.com/zh-cn/library/ms190387(SQL.90).aspx
数据库架构是一个独立于数据库用户的非重复命名空间。您可以将架构视为对象的容器
主体:http://msdn.microsoft.com/zh-cn/library/ms181127(SQL.90).aspx
是可以请求 SQL Server 资源的实体
Windows 级别的主体
Windows 域登录名
Windows 本地登录名
SQL Server 级的主体
SQL Server 登录名
数据库级的主体
数据库用户
数据库角色
应用程序角色
安全对象:http://msdn.microsoft.com/zh-cn/library/ms190401(SQL.90).aspx
安全对象是 SQL Server 数据库引擎 授权系统控制对其进行访问的资源
安全对象范围有服务器、数据库和架构
安全对象范围:服务器包含以下安全对象:
端点
登录帐户
数据库
安全对象范围:数据库包含以下安全对象:
用户
角色
应用程序角色
程序集
消息类型
路由
服务
远程服务绑定
全文目录
证书
非对称密钥
对称密钥
约定
架构
安全对象范围:架构包含以下安全对象:
类型
XML 架构集合
对象
对象 下面是对象类的成员:
聚合
约束
函数
过程
队列
统计信息
同义词
表
视图
架构:http://msdn.microsoft.com/zh-cn/library/ms365789(SQL.90).aspx
架构是指包含表、视图、过程等的容器。它位于数据库内部,而数据库位于服务器内部
特定架构中的每个安全对象都必须有唯一的名称。架构中安全对象的完全指定名称包括此安全对象所在的架构的名称。因此,架构也是命名空间
权限:http://msdn.microsoft.com/zh-cn/library/ms190387(SQL.90).aspx
每个 SQL Server 2005 安全对象都有可以授予主体的关联权限
数据库级别的角色:http://msdn.microsoft.com/zh-cn/library/ms189121(SQL.90).aspx
固定数据库角色是在数据库级别定义的,并且存在于每个数据库中。db_owner 和 db_securityadmin 数据库角色的成员可以管理固定数据库角色成员身份;但是,只有 db_owner 数据库的成员可以向 db_owner 固定数据库角色中添加成员。
每个数据库用户都属于 public 数据库角色。当尚未对某个用户授予或拒绝对安全对象的特定权限时,则该用户将继承授予该安全对象的 public 角色的权限
服务器级别角色:http://msdn.microsoft.com/zh-cn/library/ms188659(SQL.90).aspx
固定服务器角色在其作用域内属于服务器范围。固定服务器角色的每个成员都可以向其所属角色添加其他登录名。
GRANT 架构权限:http://msdn.microsoft.com/zh-cn/library/ms187940(SQL.90).aspx
如何配置用户以创建和管理 SQL Server 代理作业 http://msdn.microsoft.com/zh-cn/library/ms187901.aspx
若要配置用户以创建或执行 Microsoft SQL Server 代理作业,必须先将某个现有 SQL Server 登录名或 msdb 角色添加到 msdb 数据库中的下列 SQL Server 代理固定数据库角色之一:SQLAgentUserRole、SQLAgentReaderRole 或 SQLAgentOperatorRole。
默认情况下,这些数据库角色的成员可以创建各自的作业步骤,这些作业步骤不执行其他作业步骤。如果这些非管理用户要运行那些执行其他作业步骤类型(例如,SSIS 包)的作业,它们需要对代理帐户具有访问权限。sysadmin 固定服务器角色的所有成员都有创建、修改和删除代理帐户的权限
为具体的用户设置具体的访问权限 收藏
use 你的库名
go
--新增用户
exec sp_addlogin 'test' --添加登录
exec sp_grantdbaccess N'test' --使其成为当前数据库的合法用户
exec sp_addrolemember N'db_owner', N'test' --授予对自己数据库的所有权限
--这样创建的用户就只能访问自己的数据库,及数据库中包含了guest用户的公共表
go
--删除测试用户
exec sp_revokedbaccess N'test' --移除对数据库的访问权限
exec sp_droplogin N'test' --删除登录
如果在企业管理器中创建的话,就用:
企业管理器--安全性--右键登录--新建登录
常规项
--名称中输入用户名
--身份验证方式根据你的需要选择(如果是使用windows身份验证,则要先在操作系统的用户中新建用户)
--默认设置中,选择你新建的用户要访问的数据库名
服务器角色项
这个里面不要选择任何东西
数据库访问项
勾选你创建的用户需要访问的数据库名
数据库角色中允许,勾选"public","db_ownew"
确定,这样建好的用户与上面语句建立的用户一样
---------------------------------------------------------------------------
最后一步,为具体的用户设置具体的访问权限,这个可以参考下面的最简示例:
--添加只允许访问指定表的用户:
exec sp_addlogin '用户名','密码','默认数据库名'
--添加到数据库
exec sp_grantdbaccess '用户名'
--分配整表权限
GRANT SELECT , INSERT , UPDATE , DELETE ON table1 TO [用户名]
--分配权限到具体的列
GRANT SELECT , UPDATE ON table1(id,AA) TO [用户名]
❺ sql默认数据库被删除,不能登入怎么办
原困是未设置SQL SERVER登录认证模式为混合认证模式,因为SQL SERVER默认安装后认证模式为WINDOWS认证模式,从而导致出错。解决方法很简单:二."无法连接到服务器,用户xxx登陆失败" 该错误产生的原因是由于SQL Server使用了"仅 Windows"的身份验证方式, 因此用户无法使用SQL Server的登录帐户(如 sa )进行连接.解决方法如下所示: 1.在服务器端使用企业管理器,并且选择"使用 Windows 身份验证"连接上 SQL Server 操作步骤: 在企业管理器中 --右键你的服务器实例(就是那个有绿色图标的) --编辑SQL Server注册属性 --选择"使用windows身份验证" --选择"使用SQL Server身份验证" --登录名输入:sa,密码输入sa的密码 --确定 2.设置允许SQL Server身份登录 操作步骤: 在企业管理器中 --展开"SQL Server组",鼠标右键点击SQL Server服务器的名称 --选择"属性" --再选择"安全性"选项卡 --在"身份验证"下,选择"SQL Server和 Windows ". --确定,并重新启动SQL Server服务. 在以上解决方法中,如果在第 1 步中使用"使用 Windows 身份验证"连接 SQL Server 失败, 那就通过修改注册表来解决此问题: 1.点击"开始"-"运行",输入regedit,回车进入注册表编辑器 2.依次展开注册表项,浏览到以下注册表键: [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\MSSQLServer] 3.在屏幕右方找到名称"LoginMode",双击编辑双字节值 4.将原值从1改为2,点击"确定" 5.关闭注册表编辑器 6.重新启动SQL Server服务. 此时,用户可以成功地使用sa在企业管理器中新建SQL Server注册, 但是仍然无法使用Windows身份验证模式来连接SQL Server. 这是因为在 SQL Server 中有两个缺省的登录帐户: BUILTIN\Administrators <机器名>\Administrator 被删除. 要恢复这两个帐户,可以使用以下的方法: 1.打开企业管理器,展开服务器组,然后展开服务器 2.展开"安全性",右击"登录",然后单击"新建登录" 3.在"名称"框中,输入 BUILTIN\Administrators 4.在"服务器角色"选项卡中,选择"System Administrators" 5.点击"确定"退出 6.使用同样方法添加 <机器名>\Administrator 登录. 说明: 以下注册表键: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\MSSQLServer\LoginMode 的值决定了SQL Server将采取何种身份验证模式. 1.表示使用"Windows 身份验证"模式 2.表示使用混合模式(Windows 身份验证和 SQL Server 身份验证).
希望这些信息对你有所帮助!
0
❻ ”sql 无法打开默认数据库,登录失败“
Master数据库记录了Sqlserver所有的服务器级系统信息,所有的注册帐户和密码,以及所有的系统设置信息,还记录了所有用户定义数据库的存储位置和初始化信息。
可以试试
用SQLServer安装目录下binn目录中地rebuildm.exe;重建系统数据库。
❼ 如何修改sql server默认数据库路径
1、首先打开sql server管理工具,使用账号和密码进行登录,如图,
❽ SQLServer中登录名的默认数据库有什么作用
dbo就是原配钥匙, 其他再建的用户名就是后来 配 的钥匙。
这样理解不知道是不是对的,反正都是可以用的。
“登录”允许用户访问服务器并拥有服务器级权限。
“用户”是在数据库级,并拥有访问单独的对象的权限。
登录名是登录系统的账号,用户名是登录数据库的账号,登录名可以执行数据库中所有操作,用户名只能根据权限操作,不知这样理解对不对呵呵~~
Sql Server用户名和登录名的关系总结
以前经常被Sql Server中的用户名和登录名搞迷糊,因为用sa(登录名)就搞定一切东西了,当然这会存在一些安全隐患。网上的文章也貌似讲得很好,但还是不明白。今天决心把这个问题弄明白。mashallah, 看了N多文章加实验后终于弄明白了(学东西最重要的还是要亲自动手试试),现将学到的分享一下,看是否对你有帮助。
登录名:服务器方的一个实体,使用一个登录名只能进入服务器,但是不能让用户访问服务器中的数据库资源。每个登录名的定义存放在master数据库的syslogins表中。
用户名:一个或多个登录对象在数据库中的映射,可以对用户对象进行授权,以便为登录对象提供对数据库的访问权限。用户定义信息存放在每个数据库的sysusers表中。
SQLSERVER把登录名与用户名的关系称为映射。用登录名登录SQLSERVER后,在访问各个数据库时,SQLSERVER会自动查询此数据库中是否存在与此登录名关联的用户名,若存在就使用此用户的权限访问此数据库,若不存在就是用guest用户访问此数据库(guest是一个特殊的用户名,后面会讲到)。
一个登录名可以被授权访问多个数据库,但一个登录名在每个数据库中只能映射一次。即一个登录可对应多个用户,一个用户也可以被多个登录使用。好比SQLSERVER就象一栋大楼,里面的每个房间都是一个数据库.登录名只是进入大楼的钥匙,而用户名则是进入房间的钥匙.一个登录名可以有多个房间的钥匙,但一个登录名在一个房间只能拥有此房间的一把钥匙。
链接或登录Sql Server服务器时是用的登录名而非用户名登录的,程序里面的链接字符串中的用户名也是指登录名。