0

2.4Mysql修改、备份、恢复数据库

Posted by 撒得一地 on 2023年5月25日 in Mysql教程
上一篇:

1.修改数据库语法:

	ALTER DATABASE [IF EXISTS] db_name   
	[alter_specification [, alter_specification] ...]

	其中alter_specification包括如下几个选项:   
	[DEFAULT] CHARACTER SET charset_name 
	| [DEFAULT] COLLATE collation_name

例子:修改数据库psz的字符集为utf-8

	mysql> show databases;
	+--------------------+
	| Database |  
	+--------------------+
	| information_schema |
	| mysql |
	| performance_schema |
	| psz |
	+--------------------+
	4 rows in set (0.00 sec)

	mysql> ALTER database psz character set utf8;
	Query OK, 1 row affected (0.02 sec)

2.备份数据库

*备份某数据库下的所有表,语法:

	mysqldump -u 用户名 -p 数据库名 > e:\\文件名.sql (保存地址为window操作系统下的e盘)

例子:备份上面的psz数据下的所有表,在linux下操作语句如下

	[root@lmode~]# mysqldump -u root -p psz > /home/psz/aa.sql
	Enter password:
	[root@lmode ~]# ll /home/psz/
	total 7632
	-rw-r--r-- 1 root root 1832 Aug 25 22:02 aa.sql

上面的操作语句含义是:将psz数据库下的所有表备份到/home/psz/目录下,并重命名为aa.sql。在linux和window下,要特别注意保存地址的不同。

*备份某数据库下的某些表,语法:

	mysqldump –u 用户名 –p密码 数据库 表1 表2 表3.. > d:\\文件名.sql

例子:备份上面psz数据库里面的just_test表,语句如下

	[root@lmode~]# mysqldump -u root -p psz just_test > /home/psz/test.sql;
	Enter password:
	[root@lmode~]# ll /home/psz/
	total 7636
	-rw-r--r-- 1 root root 1832 Aug 25 22:02 aa.sql
	-rw-r--r-- 1 root root 1832 Aug 25 22:18 test.sql

注意上面的密码可以紧跟在-p选项后写 也可以最后写。

*备份数据库及这些数据库下的所有表,会多 CREATE DATABASE 语句.语法:

	mysqldump –u 用户名 –p密码 –B 数据库1 数据库2 .. > d:\\文件名.sql

例子:备份上面数据库psz及psz下的所有表 语句如下:

	[root@lmode~]# mysqldump -u root -p -B psz > /home/psz/db.sql;
	Enter password:
	[root@lmode~]# ll /home/psz/
	total 7640
	-rw-r--r-- 1 root root 1832 Aug 25 22:02 aa.sql
	-rw-r--r-- 1 root root 1966 Aug 25 22:24 db.sql
	-rw-r--r-- 1 root root 1832 Aug 25 22:18 test.sql

注意上面的数据库密码可以紧跟-p选项后书写,也可以在最后语句写完后输入密码

3.将sql导入数据库,语法:

	恢复数据库[以库为单位] 

	Source 文件名.sql

	恢复数据库[以表为单位]

	use 某个库.

	Source 文件名.sql

例子:删掉psz数据库里面的just_test表,然后将之前备份的test.sql导入psz数据库

	mysql> use psz;
	Database changed

	mysql> show tables;
	+---------------+
	| Tables_in_psz |
	+---------------+
	| just_test     |
	+---------------+
	1 row in set (0.00 sec)

	mysql> drop table just_test;
	Query OK, 0 rows affected (0.02 sec)

	mysql> show tables;
	Empty set (0.00 sec)

	mysql> source /home/psz/test.sql;
	Query OK, 0 rows affected (0.00 sec)

	mysql> show tables;
	+---------------+
	| Tables_in_psz |
	+---------------+
	| just_test    |
	+---------------+
	1 row in set (0.00 sec)

标签:,

上一篇:

下一篇:已是最新文章

相关推荐

发表评论

电子邮件地址不会被公开。 必填项已用*标注

1 + 7 = ?

网站地图|XML地图

Copyright © 2015-2024 技术拉近你我! All rights reserved.
闽ICP备15015576号-1 版权所有©psz.