SQL Server 系统数据库在安装软件时自动创建,用于协助系统共同完成对数据库的 *** 作;也是数据库运行的基础;
1,master数据库
是SQL Server 2012的核心数据库,如果损坏则数据库软件无法运行,主要包含如下主要信息:
1)所有用户登陆名和用户ID所属角色
2)数据库存储路径
3)服务器中数据库的名称和相关信息
4)系统配置设置, SQL Server 初始化信息
2,model数据库
在创建数据库时,总是以一套预定义的标准为模板进行创建的。以model数据库为模板来创建其他数据库。且model数据库是tempdb数据库的基础。
3,tempdb数据库
它是一个临时数据库,用来存储用户建立的临时表和临时存储过程,存储用户定义的全局变量值。它存在于SQL Server会话期间,会话结束,则关闭tempdb数据库,且数据库丢失。
4,msdb数据库
用于代理计划警报和作业
SQL Server 数据库存储文件
数据库文件是由数据文件和事务日志文件组成。
1,数据库文件指数据库中用来存储数据库数据和数据库对象的文件,一个数据库只能由一个主数据库文件,扩展名为 mdf
2, 次数据库文件包含除主数据库文件外的所有数据文件,一个数据库可以没有次数据库文件,也可以由多个,扩展名为 ndf
3, 日志文件由一系列日志记录组成,它记录了存储数据库的更新情况等事务日志信息,用户对数据库进行的插入,删除,更新都会记录在日志文件中。数据库发生损坏时可根据日志文件分析出错原因,或者数据丢失时,使用事务日志恢复数据库。每个数据库至少要有一个日志文件。
SQL Server 数据库创建,使用T-SQL语言创建:
使用T-SQL语言删除数据库:
SQL Server 数据库迁移:
方法1:“分离/附加”数据库,即把数据库文件(MDF)和对应的日志文件(LDF)拷贝到其它磁盘上作备份,然后把这两个文件再拷贝到任何需要这个数据库的系统之中。
分离数据库就是将某个数据库从SQL Server数据库列表中删除,使其不再被SQL Server管理和使用,但该数据库的文件(MDF)和对应的日志文件(LDF)完好无损。分离成功后,就可以把该数据库文件(MDF)和对应的日志文件(LDF)拷贝到其它磁盘中作为备份保存。
分离之前,设置数据库为单个用户,并记住该数据库所在路径。
“任务”—“分离”
然后分离数据库页面选中“更新统计信息”复选框。若“消息”列中没有显示存在活动连接,则“状态”列显示为“就绪”;否则显示“未就绪”,此时必须勾选“删除连接”列的复选框。分离后资源管理器中数据库消失
将需要附加的数据库文件和日志文件拷贝到某个已经创建好的文件夹中。
右击数据库对象,并在快捷菜单中选择“附加”命令,打开“附加数据库”窗口。
添加—选择需要附件的数据库的MDF文件。“附件为”数据库名称可修改。
MySQL添加用户、删除用户与授权
MySql中添加用户,新建数据库,用户授权,删除用户,修改密码(注意每行后边都跟个;表示一个命令语句结束):
1新建用户
11
登录MYSQL:
@>mysql
-u
root
-p
@>密码
12
创建用户:
mysql>
insert
into
mysqluser(Host,User,Password)
values("localhost","test",password("1234"));
这样就创建了一个名为:test
密码为:1234
的用户。
注意:此处的"localhost",是指该用户只能在本地登录,不能在另外一台机器上远程登录。如果想远程登录的话,将"localhost"改为"%",表示在任何一台电脑上都可以登录。也可以指定某台机器可以远程登录。
13
然后登录一下:
mysql>exit;
@>mysql
-u
test
-p
@>输入密码
mysql>登录成功
2为用户授权
授权格式:grant
on
数据库
to
用户名@登录主机
identified
by
"密码";
21
登录MYSQL(有ROOT权限),这里以ROOT身份登录:
@>mysql
-u
root
-p
@>密码
22
首先为用户创建一个数据库(testDB):
mysql>create
database
testDB;
23
授权test用户拥有testDB数据库的所有权限(某个数据库的所有权限):
mysql>grant
all
privileges
on
testDB
to
test@localhost
identified
by
'1234';
mysql>flush
privileges;//刷新系统权限表
格式:grant
权限
on
数据库
to
用户名@登录主机
identified
by
"密码";
24
如果想指定部分权限给一用户,可以这样来写:
mysql>grant
select,update
on
testDB
to
test@localhost
identified
by
'1234';
mysql>flush
privileges;
//刷新系统权限表
25
授权test用户拥有所有数据库的某些权限:
mysql>grant
select,delete,update,create,drop
on
to
test@"%"
identified
by
"1234";
//test用户对所有数据库都有select,delete,update,create,drop
权限。
//@"%"
表示对所有非本地主机授权,不包括localhost。(localhost地址设为127001,如果设为真实的本地地址,不知道是否可以,没有验证。)
//对localhost授权:加上一句grant
all
privileges
on
testDB
to
test@localhost
identified
by
'1234';即可。
3
删除用户
@>mysql
-u
root
-p
@>密码
mysql>Delete
FROM
user
Where
User='test'
and
Host='localhost';
mysql>flush
privileges;
mysql>drop
database
testDB;
//删除用户的数据库
删除账户及权限:>drop
user
用户名@'%';
>drop
user
用户名@
localhost;
4
修改指定用户密码
@>mysql
-u
root
-p
@>密码
mysql>update
mysqluser
set
password=password('新密码')
where
User="test"
and
Host="localhost";
mysql>flush
privileges;
5
列出所有数据库
mysql>show
database;
6
切换数据库
mysql>use
'数据库名';
7
列出所有表
mysql>show
tables;
8
显示数据表结构
mysql>describe
表名;
9
删除数据库和数据表
mysql>drop
database
数据库名;
mysql>drop
table
数据表名;
1、新建数据库:
进入phpmyadmin管理界面以后,找到如下文字“创建一个新的数据库”,然后在下面填上要新建的数据库的名称,在后面的下拉列表中选择数据库的编码,如“utf8_general_ci”,点击“创建”按钮,这样就新建了一个数据库。
2、新建此数据库的对应帐户
在phpmyadmin管理界面点击“权限”,打开链接,点击“添加新用户”,在打开的页面中会看到“登入信息”,输入用户名、主机(一般为本地:localhost)、密码后,因为我们现在是要给单个用户配置单个数据库的权限,在这里不选择“全局权限”,然后点击最下面的“执行”按钮,这样就新建了一个用户名。
3、为新建的用户添加此数据库权限
添加完用户以后,管理界面的上方会提示“您已添加了一个新用户”,
现在就给新建的用户添加权限,在下面找到“按数据库指定权限”。
然后点击“在下列数据库添加权限”后面的下拉列表,选择数据库,选择数据下面的全部,然后选择结构除了最下面三个以外的复选框,其他一律不选,然后点击“执行”按钮,这样就配置好了这个用户完全管理这个数据库的权限了。
注:
1、只是要给这个用户管理这个数据库的全部权限,但是没有其他数据库的管理权限,所以在配置权限的时候一定要注意。
2、INFORMATION_SCHEMA是信息数据库,其中保存着关于MySQL服务器所维护的所有其他数据库的信息。假如不想在phpMyAdmin中显示的话只需要设置在configincphp(有的是configdefaultphp)中设置这样一句:$cfg['Servers'][$i]['hide_db']
= ‘information_schema';
此外,如果在创新用户时,选择“用户数据库”中的“给以 用户名_ 开头的数据库 (username\_%)
授予所有权限”选项,新建的用户就可以自己创建以“username_”开头的数据库。
DBA用CREATE USER语句创建用户格式:CREATE USER userIDENTIFIED BY password范例:CREATE USER scottIDENTIFIED BY tiger使用系统权限一旦一个用户被创建,DBA能够授予指定的系统权限给一个用户格式:GRANT privileg [,privilege]TO user [,user |role ,PUBLIC];应用程序的开发者,例如,可能有下面典型的用户权限CREATE SESSIOIN 连接到数据库CREATE TABLE 在用户的方案中创建表CREATE SEQUENCE 在用户的方案中创建序列CREATE VIEW 在用户的方案中创视图CREATE PROCEDURE在用户的方案中创建存储过程,函数或包授予系统权限DBA能够授予用户指定的系统权限GRANT create session,create table, create sequence,create viewTO scott;创建角色并且授予权限给角色示例1、创建角色CREATE ROLE manager;2、授予权限给一个角色GRANT create table,create view TO manager;3、授予一个角色给用户GRANT manager TO DEHAAN,KOCHHAR;
以上就是关于SQL Server 数据库设计全部的内容,包括:SQL Server 数据库设计、如何给mysql数据库添加一个用户、叙述要创建一个数据库用户的基本 *** 作步骤等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)