Sql Server 中的Login,Schema,User,Role之间的关系

优秀的 Verilog/FPGA开源项目介绍(六)- MIPI MIPI的协议我就不详细介绍了(可以查看<下面的二维码>),这里和开源方案比较接近的即使FPGA实现MIPI物理层(DPHY)中电气属性相关的几种方案:MIPI DPHY RX... 阅读详情

相信很多人初次看到这几个对象都会晕,今天我就带领大家一起来把这几个概念捋一捋。

·         Login

      Login 是Server一级的概念,表示登录Server的凭证,比如在Server_A上有一个数据库DA,那么想要访问数据库DA,第一步要做的事情就是先登录到Hosting该数据库的Server_A上,数据库管理员可以用下面的T-SQL语句来创建一个Login,暂且命名为ReportLogin。

o    Windows Authentication:

Create login [ReportLogin] from windows with default_database = [master],default_language = [us_english]

o    SQL Server Authentication:

Create login [ReportLogin] with password = N'123456',default_database = [master],default_language = [us_english]

      安装完数据库软件后,会有一些预创建的Login,比较著名的就是sa和BuildIn/Administrators。

·         User

      有了一个Login,表明你可以登录hosting该Database的Server,并不表明你能够访问数据库,除非你是内置的Windows管理员,否则,你只能登录到该Server上,什么事情都做不了,就好比,你有了一个私家小院的大门钥匙(Login),你打开大门(登录),你只能在院子里边站着,因为房间的门都是锁着的,你没有房间的钥匙(User)啊,怎样才能进到屋子里边去呢?User就是要完成这样的功能。我们可以用下边的T-SQL语句来创建一个User,暂且命名为ReportUser,由于User属于数据库对象,不属于Server对象(Login属于Server对象),因此我们如果想创建一个User,首先必须进入到想创建User的数据库中(use 该数据库),然后创建User。

create user [ReportUser] for login [ReportLogin] with default_schema = ReportSchema

go

       通过语句我们可以看出来,每一个User都要映射到一个Login,所以这里的关系就是: 

·         每个User必须对应一个Login。

·         每个Login可以对应多个User,前提是User在不同的数据库中。

       一旦我们创建了映射到某个Login的User,那么此时,如果我们用该Login登录,就可以访问拥有该User的数据库了,继续打比方,我们用Login打开了大门,我们进入了小院子,此时我们还有一个User,就表明我们手上还有某个房间门的钥匙,那么此时我们可以打开房间门(数据库),堂而皇之地进入到这个小房间了。

    安装完数据库软件后,会有一些预创建的User,比较著名的就是dbo,guest,sys等等。

      再仔细看T-SQL语句,我们会发现有一个默认的架构(Schema),什么意思?接着往下看就知道了。

·         Schema

    九牛二虎之力之后,我们终于如愿以偿地进入到我们的房间了,却发现原来里边都是上下铺,究竟那个床(Schema)才是我的呢?我能把我的行李放在哪里呢?这个就是架构,Schema:数据库数据库架构是一个独立于数据库用户的非重复命名空间,您可以将架构视为对象的容器,这不就是床了,放东西啦。相信容器的概念大家已经很熟悉了,比如一块新硬盘,我们会为他划分为N个盘符,C:,D:,E:啊之类的,在每个盘符之下,我们又有N个文件夹Folder,这些都是容器。再比如我们可以拿一个网站来做类比,一个网站包含很多的网页,图片,脚本文件,我们姑且称它为网站对象。显然,我们不可能把所有的网站对象都放到一个文件夹下面,同样道理,数据库对象也不可能象煮饺子一样就在数据库里这么一锅出。对于网站,我们通常会把不同模块的文件放在不同的子文件夹下,那么谁是存放数据库对象的文件夹呢?答案就是:架构(Schema)。

     实际上数据库的每个对象都是有架构的,既每个数据库对象都有放的位置,但是我们很多人在创建数据库对象的时候却没有指定,那么他们放在哪里了呢?在SQL Server 2005之后的版本中,当我们创建数据库对象没有显式指定Schema时,数据库会为我们默认地指定一个默认Schema: dbo。所有没有显式指定Schema的数据库对象,统统地被放在了dbo这个公共空间中。

     架构(Schema)概念的引入就是为了解决数据库对象太多不好管理的缺点。

    安装完数据库软件后,会有一些预创建的Schema,包括dbo,以及每个以预定义Role命名的Schema,比如:db_owner,db_datareader,db_datawriter等等。

·         Role

       角色这个概念是为了降低管理成本,简化管理的工作量而出现的,试想如果一个公司有1000人,每个人都需要对某个表进行write的权限,如果没有角色,我们要对这1000个人分别Grant权限,就是单单copy运行,也需要很久啊,如果公司有3000人呢?估计管理员早就不干了。角色(Role)就是为了解决这个问题而出现的。建立一个角色(Role),数据库管理员只用Grant这个角色拥有对这个个表的write权限就OK了,下一步要做的工作就是把公司里边需要对这个表具有write权限的员工赋予这个Role即可,管理成本是不是降低了不少。 

     安装完数据库软件后,会有一些预创建的Server Role和Database Role(以db_开头)。

o   Server Roles:

1.       bulkadmin

2.       dbcreator

3.       diskadmin

4.       processadmin

5.       public               ---- 每个新建login的默认Server Role

6.       securityadmin

7.       serveradmin

8.       setupadmin

9.       sysadmin

o   Database Roles:

1.       db_accessadmin

2.       db_backupopeator

3.       db_datareader

4.       db_datawriter

5.       db_ddladmin

6.       db_denydatareader

7.       db_denydatawriter

8.       db_owner

9.       db_securityadmin

10.   public

     至于具体每个角色的权限有多大,究竟每个角色能做什么事情,请查看Book Online,微软的idea是数据库所预装的Role能完成大部分的权限分配问题。

【异常】OpenClaw LLM请求超时故障全链路排查与解决方案 LLM request timed out. 网络连接超时了 摘要: OpenClaw LLM请求超时故障是高频网络交互问题,表现为客户端在预设时间内未收到服务端响应。根因分为四类:客户端配置缺陷(如超时阈值不合理)、网络链路异常(防火墙拦截等)、服务端问题(限流/宕机)及硬件瓶颈(算力不足)。解决方案分三步: 通用排查:检查网络连通性、关闭防火墙/代理校验,调整超时阈值至60-300秒; 分场景修复:云端API需核对密钥/限流规则,本地部署需验证服务状态与硬件资源; 兜底方案:重启程序、更新版本或更换服务端点,结合日志精准定位。修复后不影响OpenClaw数据完整性 阅读详情

相关推荐

SSTI模板注入及绕过姿势(基于Python-Jinja2)

http://xmctf.top:8962/?name={{%22%22[%22\x5f\x5fclass\x5f\x5f%22]["\x5F\x5Fbase\x5F\x5F"]["\x5F\x5Fsubclasses\x5F\x5F"]()[233]["\x5F\x5Finit\x5F\x5F"]["\x5F\x5Fglobals\x5F\x5F"]["\x5F\x5Fbuiltins\x5F\x5F"]['eval']("\x5F\x5Fimport\x5F\x5F('os'))")}}

Y4tacker的博客 1万+

Login,Schema,User,Role之间的关系

这篇文章比喻相当生动,开门溜锁进房上床…… Sql Server 中的Login,Schema,User,Role之间的关系 详细透彻文章地址:http://blog.youkuaiyun.com/wangjunhe/article/details/6447687     ……     就好比,你有了一个私家小院的大门钥匙(Login),你打开大门(登录),你只能在院子里边站着,因为房

buck_kkk的博客 804

银河麒麟V10 SP3离线安装Nginx1.21.5全记录(附11个rpm包下载清单)

本文详细记录了在银河麒麟V10 SP3操作系统上离线安装Nginx 1.21.5的全过程,包括11个必备rpm包的下载清单。通过分步骤的实战指南,帮助用户在国产化环境中高效部署Nginx服务,涵盖安装、配置、调优及故障排查等关键环节,特别适合金融、政务等对安全性要求高的场景。

weixin_30872337的博客 602

微信小程序登录界面

(1)分角色登录。(2)用户名和密码输入后才可点击“登录”按钮。(3)登录验证。

xian_tan的博客 5611

告别校准烦恼:用ADS1220和松下ERA3电阻实现±0.05℃精度的Pt100测温方案(附完整电路图)

本文详细介绍了如何利用TI的ADS1220 24位ΔΣ ADC与松下ERA3系列精密电阻构建±0.05℃精度的免校准Pt100测温系统。通过比例测量法架构和关键器件选型,解决了传统方案中的校准繁琐和长期稳定性问题,特别适用于工业控制、医疗设备等高精度温度测量场景。

weixin_30740581的博客 611

从平衡车到寻迹小车:IMU963RA九轴陀螺仪实战避坑与四元数融合指南

本文详细解析了IMU963RA九轴陀螺仪在机器人姿态控制中的应用,重点探讨了从六轴升级到九轴系统的技术路径及四元数融合算法。通过实战案例,揭示了如何利用地磁计补偿陀螺积分漂移,并提供硬件集成、传感器校准及算法实现的完整解决方案,有效将8小时漂移控制在2度以内。

weixin_27219587的博客 253

sqlserver创建login、user并授予相应数据库的权限

create login login1 with password='111111' --创建一个login,用于登录。use [BookLibrary] --在数据库[BookLibrary]上创建用户user2,赋予下面三个权限。use [BookLibrary] --在数据库[BookLibrary]上创建用户user2,收回下面三个权限。use [BookDB] --在数据库[BookDB]上创建用户user1,拥有下面三个权限。--上面复权的另一种写法。--上面收权的另一种写法。

fishv668的博客 936

告别瞎猜!用通达信L2资金流向函数,手把手教你识别主力动向(附实战公式)

本文详细解析通达信L2资金流向函数,手把手教你构建主力动向监控系统。通过分档数据解析、委买委卖攻防解读及实战公式应用,帮助投资者精准识别主力建仓与虚假拉升信号,提升股票交易决策效率。

weixin_26908317的博客 2072

sql server login与user的区别(摘)

LOGIN与USER的区别LOGIN是登录到服务器用的,用户是执行数据库运用的主体,是两个不同的概念,LOGIN是是针对服务器的,不能使用数据库的功能,USER是在某个数据库内起作用,一个LOGIN可以在多个数据库内映射(不太好形容)USER,即一个LOGIN即可以在A数据库内干活,也可以在B数据库内干活,也就是说每个数据库用户必须对应一个LOGIN,但一个LOGIN可以对应多个数据库的USER。...

weixin_33967071的博客 909

BMS开发避坑指南:如何用ADBMS6815实现0.03%精度的电池采样?

本文深入解析了如何利用ADBMS6815等高精度AFE芯片,在车规级BMS开发中实现0.03%级别的电池电压采样精度。文章从芯片选型、硬件设计、软件配置、算法优化到系统验证,提供了一套完整的实战指南,帮助工程师系统性地提升BMS测量精度,从而保障电池安全、延长寿命并增强产品竞争力。

weixin_28314575的博客 134

Lumerical FDTD新手必看:从零开始搭建光子晶体仿真环境(附完整脚本)

本文为Lumerical FDTD新手提供光子晶体仿真环境的完整搭建指南,涵盖从基础参数设置到脚本编写的全流程。通过典型光子晶体带隙分析案例,详细讲解结构建模、仿真参数配置及后处理技巧,并附赠完整MATLAB脚本,帮助用户快速掌握FDTD仿真核心技术。

3c4x5z6v7b的博客 1050

SQL - 1.区分login、user、schema和role

Login Login是Server一级的概念,表示登录Server的凭证,比如在Server_A上有一个数据库DA,那么想要访问数据库DA,第一步要做的事情就是先登录到Hosting该数据库的Server_A上,数据库管理员可以用下面的T-SQL语句来创建一个Login,暂且命名为ReportLogin。 Windows Authenticati...

dipeichang0801的博客 932

RK3588开发笔记-5G模块(SIM8200、广和通FM160、移远RM500U)调试笔记

RK3588 CPU提供了丰富的外设接口,本文主要介绍通过usb3.0接口驱动5G模块来实现5g无线数据传输功能。在物联网和边缘计算领域,5G网络支持的高速率、低延时连接为应用带来了更多可能性。RK3588作为一款高性能SoC,适合用于5G联网应用。SIM8200广和通FM160和移远RM500U。在RK3588上调试5G模块可以为设备提供稳定的高速联网能力。本文介绍了如何配置和调试SIM8200、广和通FM160和移远RM500U模块,通过AT指令和QMI/MBIM工具实现5G数据连接。

flypig has a dream! 2669

[SqlServer]-SqlServer Login User Schema Concept And Relation

关于SqlServer Login,User  Schema Mapping

tomcat的专栏 979

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

SqlServer2005 loginuser user Database schema table role 之间的关系

【闭月羞花猫】 20100519 于 LDNS 昨天梳理了一下 SqlServer2005  loginuser user Database schema table role 之间的关系。并举个房子钥匙住户的例子(这是个出租房哦,合租的哦)来简单阐述我自己的理解! 使用工具: SQL Server Management Studio 2005 Database:

闭月羞花猫 2184

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

sql server 下的login user role scheme 区别

A schema is a collection of database objects (used by a user.). schema objects are the logical structures that directly refer to the database’s data. A user is a name defined in the database that can ...

sinolover的专栏 667

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

关于sqlserver schema/user/login/role

对sqlserver schema/user/login/role的理解   explain schema/user/login/role     LOGIN:         Login is server level object not database level

qingqingtimes的专栏 537

Sql Server 2005中的架构(Schema)、用户(User)、角色(Role)和登录(Login)(一)

 我相信很多人接触这些概念的时候一头雾水。要把这些概念理清楚真不是件容易的事,哪像原始社会,只要能分清楚什么能吃什么不能吃就行了。但是我始终坚信,每一个概念的产生必然是因为碰到了无法解决的问题。换句话说,如果没有它,必然会导致某些问题难以解决。所以我想从这个角度切入,希望能把这几个复杂而暧昧的多角关系从最实用的角度来阐述清楚。在问题的最初,我们假定的数据库什么都没有。数据库对象。首

简单的快乐 1654

Sql Server 2005中的架构(Schema)、用户(User)、角色(Role)和登录(Login)(三)

 摘要:【目的】了解数据库中角色(Role)的概念和用处。【方法】用李老板的公司发展中碰到的问题例证角色的重要性【结论】角色在用户越多的情况下越能凸显出它的作用。3.1 深入了解架构(Schema)      在进入李老板的故事之前,让我们先对Sql Server2005中的架构做一个更深入的了解。      用户(User)和架构(Schema)的关系 一个架构有且只有一

copooo的专栏 819

Sql Server 2005中的架构(Schema)、用户(User)、登录(Login)和角色(Role)

我相信很多人接触这些概念的时候一头雾水。要把这些概念理清楚真不是件容易的事,哪像原始社会,只要能分清楚什么能吃什么不能吃就行了。   但是我始终坚信,每一个概念的产生必然是因为碰到了无法解决的问题。换句话说,如果没有它,必然会导致某些问题难以解决。所以我想从这个角度切入,希望能把这几个复杂而暧昧的多角关系从最实用的角度来阐述清楚。   在问题的最初,我们假定的数据库什么都没有。   数据库对

C++ 1269

关于SQLSERVER的LOGIN USER SCHEMA ROLE

SQLSERVER2000安全采用2层模型,一层是连接的权限控制,一层是数据库访问的权限控制 LOGIN(登录)相对于连接实例来说的,是服务器层的,就像进入一个大楼要接受门卫的检查一样。 USER(用户)相对于数据库访问来说...

ciyouzang6283的博客 209
上一篇: 在linux上配置unixODBC和FreeTDS访问MS SQL Server.
下一篇: Sql Server 2005中的架构(Schema)、用户(User)、登录(Login)和角色(Role)
wangjunhe
博客等级 码龄20年 31粉丝 22原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值