如何更改MySQL数据库的数据库名

如何更改MySQL数据库的数据库名,第1张

修改名称详细步骤(因为不仅仅是上面那几步)mysql> use dinghao;mysql> select from t1;+——+———–+| id | name |+——+———–+| 1 | 刘德华 | +——+———–+1 row in set (000 sec)mysql> show create table t1;+——-+————————————————————————————————————————-+| Table | Create Table |+——-+————————————————————————————————————————-+| t1 | CREATE TABLE `t1` ( `id` int(11) DEFAULT NULL, `name` varchar(20) DEFAULT NULL) ENGINE=InnoDB DEFAULT CHARSET=utf8 | +——-+————————————————————————————————————————-+1 row in set (000 sec)mysql> flush tables;Query OK, 0 rows affected (000 sec)mysql> flush logs;Query OK, 0 rows affected (000 sec)mysql> show processlist; #这一步主要查看有没有其他进程连接,要保证没有其他程序 *** 作数据库。+—-+——+———–+———+———+——-+——-+——————+| Id | User | Host | db | Command | Time | State | Info |+—-+——+———–+———+———+——-+——-+——————+| 17 | root | localhost | dinghao | Query | 0 | NULL | show processlist | +—-+——+———–+———+———+——-+——-+——————+1 rows in set (000 sec)mysql> alter table t1 engine=MyISAM;Query OK, 1 row affected (001 sec)Records: 1 Duplicates: 0 Warnings: 0mysql> exit[root@mysqludf var]# mv dinghao aaa;mysql> use aaa;Database changedmysql> alter table t1 engine=INNODB;Query OK, 1 row affected (000 sec)Records: 1 Duplicates: 0 Warnings: 0mysql> select from t1;+——+———–+| id | name |+——+———–+| 1 | 刘德华 | +——+———–+1 row in set (000 sec)注意,在改名之前必须现转换存储引擎,否则会报错,你想换的这个名称就换不成了,只能换另外一个名称了。错误的方法就不演示了,光记住好的就行了。

看你用什么引擎

一般默认存放在

show variables like '%datadir%';

这里

但innodb的数据文件部分存放在

show variables like '%innodb_data%';

这里

如果存储引擎是myisam的,其有frm、MYI、MYD三种格式的文件,其中表定义在frm这里;数据文件保存在MYD;索引保存在MYI里。

如果存储引擎是innodb的,其数据文件保存在类似ibdata1这样的文件,表定义在frm这里

mysql数据库的导入,有两种方法:

1)

先导出数据库sql脚本,再导入;

2)

直接拷贝数据库目录和文件。

在不同 *** 作系统或mysql版本情况下,直接拷贝文件的方法可能会有不兼容的情况发生。

所以一般推荐用sql脚本形式导入。下面分别介绍两种方法。

2

方法一

sql脚本形式

*** 作步骤如下:

21

导出sql脚本

在原数据库服务器上,可以用phpmyadmin工具,或者mysqldump命令行,导出sql脚本。

211

用phpmyadmin工具

导出选项中,选择导出“结构”和“数据”,不要添加“drop

database”和“drop

table”选项。

选中“另存为文件”选项,如果数据比较多,可以选中“gzipped”选项。

将导出的sql文件保存下来。

212

用mysqldump命令行

命令格式

mysqldump

-u用户名

-p

数据库名

>

数据库名sql

范例:

mysqldump

-uroot

-p

abc

>

abcsql

(导出数据库abc到abcsql文件)

提示输入密码时,输入该数据库用户名的密码。

22

创建空的数据库

通过主控界面/控制面板,创建一个数据库。假设数据库名为abc,数据库全权用户为abc_f。

23

将sql脚本导入执行

同样是两种方法,一种用phpmyadmin(mysql数据库管理)工具,或者mysql命令行。

231

用phpmyadmin工具

从控制面板,选择创建的空数据库,点“管理”,进入管理工具页面。

在"sql"菜单中,浏览选择刚才导出的sql文件,点击“执行”以上载并执行。

注意:phpmyadmin对上载的文件大小有限制,php本身对上载文件大小也有限制,如果原始sql文件

比较大,可以先用gzip对它进行压缩,对于sql文件这样的文本文件,可获得1:5或更高的压缩率。

gzip使用方法:

#

gzip

xxxxxsql

得到

xxxxxsqlgz文件。

提示输入密码时,输入该数据库用户名的密码。

3

直接拷贝

如果数据库比较大,可以考虑用直接拷贝的方法,但不同版本和 *** 作系统之间可能不兼容,要慎用。

31

准备原始文件

用tar打包为一个文件

32

创建空数据库

33

解压

在临时目录中解压,如:

cd

/tmp

tar

zxf

mydbtargz

34

拷贝

将解压后的数据库文件拷贝到相关目录

cd

mydb/

cp

/var/lib/mysql/mydb/

对于freebsd:

cp

/var/db/mysql/mydb/

35

权限设置

将拷贝过去的文件的属主改为mysql:mysql,权限改为660

chown

mysql:mysql

/var/lib/mysql/mydb/

chmod

660

/var/lib/mysql/mydb/

打字不易,如满意,望采纳。

1 linux下是在/var/lib/mysql

2 他的数据库文件格式有三种:[frm],[MYD],[MYI]的

3 这个问题应该是不行的,没有做过

4 这个很好弄的,你在新的服务器上建立一个远程连接旧的mysql数据库,直接复制数据库表就OK了~~

希望 对你有用!!!

以上就是关于如何更改MySQL数据库的数据库名全部的内容,包括:如何更改MySQL数据库的数据库名、My Sql 的数据库文件是什么格式的 存放在哪里、怎么把数据库文件导入mysql数据库等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

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

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

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

发表评论

登录后才能评论

评论列表(0条)

保存