如何更改SQL数据库名称

如何更改SQL数据库名称,第1张

在查询分析器里执行

sp_rename

'数据库原来的名字','数据库新名','database'

比如原来你的数据库是db1

你想修改为db2则语句为

sp_rename

'db1','db2','database'

1大多数

Windows

用户都需要一个

SQL

Server

登录名以便连接到

SQL

Server。本主题说明了如何创建

SQL

Server

登录名。

2创建使用

Windows

身份验证

(SQL

Server

Management

Studio)

SQL

Server

登录名

3在

SQL

Server

Management

Studio

中,打开对象资源管理器并展开要在其中创建新登录名的服务器实例的文件夹。

4右键单击“安全性”文件夹,指向“新建”,然后单击“登录名”。

5在“常规”页上的“登录名”框中输入一个

Windows

用户名。

6选择“Windows

身份验证”。

7单击“确定”。

8创建使用

SQL

Server

身份验证

(SQL

Server

Management

Studio)

SQL

Server

登录名

9在

SQL

Server

Management

Studio

中,打开对象资源管理器并展开要在其中创建新登录名的服务器实例的文件夹。

10右键单击“安全性”文件夹,指向“新建”,然后单击“登录名”。

11在“常规”页上的“登录名”框中输入一个新登录名的名称。

12选择“SQL

Server

身份验证”。Windows

身份验证是更安全的选择。

输入登录名的密码。

13选择应当应用于新登录名的密码策略选项。通常,强制密码策略是更安全的选择。

单击“确定”。

14通过

Transact-SQL

创建使用

Windows

身份验证的

SQL

Server

登录名

在查询编辑器中,输入以下

Transact-SQL

命令:CREATE

LOGIN

FROM

WINDOWS;

GO

15通过

Transact-SQL

创建使用

SQL

Server

身份验证的

SQL

Server

登录名

在查询编辑器中,输入以下

Transact-SQL

命令:CREATE

LOGIN

WITH

PASSWORD

=

'

'

;

GO

MySQL 的 Binlog 记录着 MySQL 数据库的所有变更信息,了解 Binlog 的结构可以帮助我们解析Binlog,甚至对 Binlog 进行一些修改,或者说是“篡改”,例如实现类似于 Oracle 的 flashback 的功能,恢复误删除的记录,把 update 的记录再还原回去等。本文将带您探讨一下这些神奇功能的实现,您会发现比您想象地要简单得多。本文指的 Binlog 是 ROW 模式的 Binlog,这也是 MySQL 8 里的默认模式,STATEMENT 模式因为使用中有很多限制,现在用得越来越少了。

Binlog 由事件(event)组成,请注意是事件(event)不是事务(transaction),一个事务可以包含多个事件。事件描述对数据库的修改内容。

现在我们已经了解了 Binlog 的结构,我们可以试着修改 Binlog 里的数据。例如前面举例的 Binlog 删除了一条记录,我们可以试着把这条记录恢复,Binlog 里面有个删除行(DELETE_ROWS_EVENT)的事件,就是这个事件删除了记录,这个事件和写行(WRITE_ROWS_EVENT)的事件的数据结构是完全一样的,只是删除行事件的类型是 32,写行事件的类型是 30,我们把对应的 Binlog 位置的 32 改成 30 即可把已经删除的记录再插入回去。从前面的 “show binlog events” 里面可看到这个 DELETE_ROWS_EVENT 是从位置 378 开始的,这里的位置就是 Binlog 文件的实际位置(以字节为单位)。从事件(event)的结构里面可以看到 type_code 是在 event 的第 5 个字节,我们写个 Python 小程序把把第383(378+5=383)字节改成 30 即可。当然您也可以用二进制编辑工具来改。

找出 Binlog 中的大事务

由于 ROW 模式的 Binlog 是每一个变更都记录一条日志,因此一个简单的 SQL,在 Binlog 里可能会产生一个巨无霸的事务,例如一个不带 where 的 update 或 delete 语句,修改了全表里面的所有记录,每条记录都在 Binlog 里面记录一次,结果是一个巨大的事务记录。这样的大事务经常是产生麻烦的根源。我的一个客户有一次向我抱怨,一个 Binlog 前滚,滚了两天也没有动静,我把那个 Binlog 解析了一下,发现里面有个事务产生了 14G 的记录,修改了 66 万条记录!下面是一个简单的找出 Binlog 中大事务的 Python 小程序,我们知道用 mysqlbinlog 解析的 Binlog,每个事务都是以 BEGIN 开头,以 COMMIT 结束。我们找出 BENGIN 前面的 “# at” 的位置,检查 COMMIT 后面的 “# at” 位置,这两个位置相减即可计算出这个事务的大小,下面是这个 Python 程序的例子。

切割 Binlog 中的大事务

对于大的事务,MySQL 会把它分解成多个事件(注意一个是事务 TRANSACTION,另一个是事件 EVENT),事件的大小由参数 binlog-row-event-max-size 决定,这个参数默认是 8K。因此我们可以把若干个事件切割成一个单独的略小的事务

ROW 模式下,即使我们只更新了一条记录的其中某个字段,也会记录每个字段变更前后的值,这个行为是 binlog_row_image 参数控制的,这个参数有 3 个值,默认为 FULL,也就是记录列的所有修改,即使字段没有发生变更也会记录。这样我们就可以实现类似 Oracle 的 flashback 的功能,我个人估计 MySQL 未来的版本从可能会基于 Binlog 推出这样的功能。

了解了 Binlog 的结构,再加上 Python 这把瑞士军刀,我们还可以实现很多功能,例如我们可以统计哪个表被修改地最多?我们还可以把 Binlog 切割成一段一段的,然后再重组,可以灵活地进行 MySQL 数据库的修改和迁移等工作。

一、未使用的数据库 改名方法如下:

1、未使用的数据库改名比较方便,找到你要更改的数据库,右键选择重命名。

2、然后将你想要更改的名字写好,然后点击一下旁边的空白栏。

3、然后你就发现数据库的名称已经改好了。

二、使用中的数据库改名方法如下:

1、使用中的数据库你在使用这种方法显然是不合适,你用这种方法更改数据库的名字之后会提示你无法重命名数据库。

2、这时还是同样的右键你要改名的数据库,选择属性按钮。

3、然后在数据库属性左侧菜单栏中选择选项按钮。

4、然后在状态栏目下有一项限制访问选项,默认的是MULTI_USER,意为多用户模式,然后你将其更改为SINGLE_USER单用户模式,点击确定即可。

5、然后你在使用上面的方法更改数据库的名称会发现数据库改名成功了。

vs2010自带的sql为sql2008

express不带管理工具可以通过vs2010进行连接在vs2010中通过菜单:"tools"->connect

to

database

可以连接到这个数据库执行相应的 *** 作,但其中内置了sql

server的精简版,无法用于开发,只能查看数据什么的。如果想开发只能安装,升级程序将sql

server升级为开发版或自己安装服务器版的用于开发。

以上就是关于如何更改SQL数据库名称全部的内容,包括:如何更改SQL数据库名称、如何设置sql server数据库的用户名和密码、如何使用命令修改MySQL数据库名等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/10170431.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-06
下一篇 2023-05-06

发表评论

登录后才能评论

评论列表(0条)

保存