更改数据库名称 如何修改MySQL数据库名称
本篇文章给大家谈谈更改数据库名称,以及如何修改MySQL数据库名称对应的知识点,文章可能有点长,但是希望大家可以阅读完,增长自己的知识,最重要的是希望对各位有所帮助,可以解决了您的问题,不要忘了收藏本站喔。
如何更改数据库的名称
1、点击“开始”菜单,单击打开“所有程序”,在下拉选线中找到“Microsoft SQL Server 2005”,单击打开“SQL Server Management Studio Express”。
2、在身份验证中选择“Windows身份验证”,然后点击“连接”。
3、在身份验证中如果选择“SQL Server身份验证”,则需要输入“用户名”和“密码”。
4、选择“Windows身份验证”进入界面后,选中你需要更改的数据库,点击右键,选择“重命名”。输入你想要的数据库名称即可。
5、选择“SQL Server身份验证”登录以后,进入登录界面可以看到"sa"用户下建立的所有数据库。
6、左键单击选中你要修改的数据库,右键“重命名”,输入你修改的数据库名即可。
我想修改mysql数据库的名字,可以怎么修改
被取消的命令MySQL之前提供了一个 rename database db_old to db_new的命令来直接对数据库改名,可能由于实现的功能不完备(比如,这条命令可能是一个超大的事务,或者是由于之前的表很多还是 MyISAM等),后来的版本直接取消了这条命令。更改数据库名大致上有以下几种方案:
一、mysqldump导入导出要说最简单的方法,就是直接用 mysqldump工具,在旧库导出再往新库导入(最原始、最慢、最容易想到)的方法:旧库 yttdb_old导出(包含的对象:表、视图、触发器、事件、存储过程、存储函数)
二、改整库的表名利用 MySQL更改表名的方法来批量把旧库的所有表依次遍历,改名为新库的表。这种方法比第一种要快很多倍,但是没有第一步操作起来那么顺滑,不能一步到位。比如,要把数据库 yttdb_old改名为 yttdb_new,如果数据库 yttdb_old里只有磁盘表,那很简单,直接改名即可。或者写个脚本来批量改,非常简单。但是一般旧库里不只有磁盘表,还包含其他各种对象。这时候可以先考虑把旧库的各种对象导出来,完了在逐一改完表名后导进去。
三、历史方案其实在 MySQL早期还有一种方法。假设 MySQL部署好了后,所有的 binlog都有备份,并且二进制日志格式还是 statement的话,那就可以简单搭建一台从机,让它慢慢追主机到新的库名,等确切要更改旧库的时候,再直接晋升从机为主机即可。这里只需要从机配置一个参数来把旧库指向为新库:replicate-rewrite-db=yttdb_old->yttdb_new不过这种局限性很大,不具备标准化,不推荐。
总结其实针对 MySQL本身改库名,大致就这么几种方法:
如果数据量小,推荐第一种;数据量大,则推荐第二种;数据量巨大,那就非 MySQL本身能解决的了。可通过部署第三方 ETL工具,通过解析 MySQL二进制日志或其他的方式来把旧库数据直接读取到新库达到改名的目的等等。如何修改MySQL数据库名称
修改MySQL数据库名称的方法如下:
1.语句修改法:
RENAME DATABASE db_name TO new_db_name
这个语法在mysql 5.1.7中被添加进来,到了5.1.23又去掉了。
2.如果所有表都是MyISAM类型的话,可以改文件夹的名字
把data目录中的db_name目录重命名为new_db_name
3.重命名所有的表
代码如下:
4. mysqldump导出数据再导入
代码如下:
5.使用shell脚本重命名所有的表
代码如下:
如何完整的修改一个数据库的名称
/*
该脚本示例如何完整的修改一个数据库的名称.
数据库为原名称为DB_BEIJING,需要修改成DB_SHANGHAI
nzperfect 2012.12.19
*/
--判断是否存在同名的数据库,以防止误删除
USE master
GO
IF EXISTS(SELECT name FROM sys.databases WHERE name= N'DB_BEIJING')
BEGIN
RAISERROR('请注意:数据库已存在!',15,1)
RETURN
--DROP DATABASE DB_BEIJING
END
GO
USE master
GO
--创建测试数库
CREATE DATABASE [DB_BEIJING]
ON PRIMARY
(
NAME= N'DB_BEIJING',
FILENAME= N'X:\DATA\DB_BEIJING.mdf',
SIZE= 3072KB,
FILEGROWTH= 1024KB
)
LOG ON
(
NAME= N'DB_BEIJING_log',
FILENAME= N'W:\Log\DB_BEIJING_log.ldf',
SIZE= 1024KB,
FILEGROWTH= 1024KB
)
GO
--以下为修改过程
--step 1:修改数据库名称
USE master
GO
ALTER DATABASE DB_BEIJING SET SINGLE_USER WITH ROLLBACK IMMEDIATE
GO
EXEC master..sp_renamedb'DB_BEIJING','DB_SHANGHAI'
GO
ALTER DATABASE DB_SHANGHAI SET MULTI_USER
GO
--step 2:查看修改名称后的数据库逻辑名及物理文件名
USE master
GO
SELECT name AS [Logical Name], physical_name AS [DB File Path],type_desc AS [File Type],
state_desc AS [State] FROM sys.master_files
WHERE database_id= DB_ID(N'DB_SHANGHAI')
GO
/*
Logical Name DB File Path File Type State
DB_BEIJING X:\DATA\DB_BEIJING.mdf ROWS ONLINE
DB_BEIJING_log W:\Log\DB_BEIJING_log.ldf LOG ONLINE
*/
--step 3:修改数据库逻辑文件名称
USE master
GO
ALTER DATABASE DB_SHANGHAI SET SINGLE_USER WITH ROLLBACK IMMEDIATE
GO
ALTER DATABASE DB_SHANGHAI MODIFY FILE(NAME=N'DB_BEIJING', NEWNAME=N'DB_SHANGHAI')
GO
ALTER DATABASE DB_SHANGHAI MODIFY FILE(NAME=N'DB_BEIJING_log', NEWNAME=N'DB_SHANGHAI_log')
GO
ALTER DATABASE DB_SHANGHAI SET MULTI_USER
GO
--step 4:修改数据库物理文件名称之前先打开xp_cmdshell支持
USE master
GO
sp_configure'show advanced options',1
GO
RECONFIGURE WITH OVERRIDE
GO
sp_configure'xp_cmdshell', 1
GO
RECONFIGURE WITH OVERRIDE
GO
--step 5:重命名数据库物理文件名称
USE [master]
GO
ALTER DATABASE DB_SHANGHAI SET OFFLINE WITH ROLLBACK IMMEDIATE
GO
EXEC xp_cmdshell'RENAME"X:\DATA\DB_BEIJING.mdf","DB_SHANGHAI.mdf"'
GO
EXEC xp_cmdshell'RENAME"W:\Log\DB_BEIJING_log.ldf","DB_SHANGHAI_log.ldf"'
GO
--step 6:将数据库逻辑名称指向新的物理文件,并将数据库online
USE [master]
GO
ALTER DATABASE DB_SHANGHAI MODIFY FILE(NAME=DB_SHANGHAI, FILENAME='X:\DATA\DB_SHANGHAI.mdf')
GO
ALTER DATABASE DB_SHANGHAI MODIFY FILE(NAME=DB_SHANGHAI_log, FILENAME='W:\LOG\DB_SHANGHAI_log.ldf')
GO
ALTER DATABASE DB_SHANGHAI SET ONLINE
--step 7:查看全部修改完成后的数据库情况
USE master
GO
SELECT name AS [Logical Name], physical_name AS [DB File Path],type_desc AS [File Type],
state_desc AS [State] FROM sys.master_files
WHERE database_id= DB_ID(N'DB_SHANGHAI')
GO
/*
Logical Name DB File Path File Type State
DB_SHANGHAI X:\DATA\DB_SHANGHAI.mdf ROWS ONLINE
DB_SHANGHAI_log W:\LOG\DB_SHANGHAI_log.ldf LOG ONLINE
*/
--step 8:关闭xp_cmdshell支持
USE master
GO
sp_configure'xp_cmdshell', 0
GO
RECONFIGURE WITH OVERRIDE
GO
sp_configure'show advanced options',0
GO
RECONFIGURE WITH OVERRIDE
GO
关于本次更改数据库名称和如何修改MySQL数据库名称的问题分享到这里就结束了,如果解决了您的问题,我们非常高兴。