本文目录一览:
- 1、MYSQL我用的mysql-essential-5.1.59-win32版本。在CMD里还原数据库的时候出现这样的错误
- 2、mysql数据库备份成功,再还原却失败,什么原
- 3、mysql还原数据库
MYSQL我用的mysql-essential-5.1.59-win32版本。在CMD里还原数据库的时候出现这样的错误
你需要先执行一个 DELIMITER // 语句.
因为默认情况下, mysql 遇到 分号 也就是 ; 就会认为语句结束了。
但是存储过程里面, 很多的分号。
因此。 使用 DELIMITER // 语句, 将 // 作为 语句结束的字符
下面是一个例子:
mysql
mysql数据库备份成功,再还原却失败,什么原
mysqlmysqldump -u root -p dbcurr 20090219.sql; 上面这个是你写的,-p后面是密码还是数据库的名字,如果是数据库的名字,那么你没有指定备份到哪个目录里面自然报错 举例 mysqlmysqldump -uroot -p密码 dbcurr /root/20090219.sql;
mysql还原数据库
简单情况下:进入原来mysql安装路径下的data文件夹下,找到相应的库和ibdata1,进行copy,就可回复原来的数据。
复杂情况下:
从另一台机上把MySQL数据库的mysql文件夹拷贝到本地机上,目的是恢复本地机对数据的访问和操作。经过如下几种情况的操作。
1. 在本地重装MySQL(安装目录D:\Program Files\MySQL\MySQL Server 5.0),直接把mysql文件夹拷贝至D:\Program Files\MySQL\MySQL Server 5.0\。结果,失败:数据库连接错误。
2. 卸载后重装MySQL,将D:\Program Files\MySQL\MySQL Server 5.0\下的数据备份,只把mysql\data文件夹全部内容拷贝到D:\Program Files\MySQL\MySQL Server 5.0\data下。结果,失败:数据库连接错误。将备份的数据还完覆盖。结果,失败,还是连接不上数据库。
3. 卸载后重装MySQL,将mysql\data文件夹里的cf1,last文件夹(这两个是原来MySQL里的数据库)拷贝进D:\Program Files\MySQL\MySQL Server 5.0\data。连接成功,在Navicat for MySQL里看到数据库cf1和last,但是不能访问,因为数据全为零。明白了原来data里以数据库命名的文件存储的是数据库的表结构,不是元数据。下一步,把data文件夹里的ibdata1文件(3.4G大,明显存储了元数据)拷贝到D:\Program Files\MySQL\MySQL Server 5.0\data里,代替原来的ibdata1文件。重启电脑,打开Navicat for MySQL,连接成功,数据可以访问操作。
至此,操作终于成功。其实当初在那台机上把数据导出来,而不是现在直接把文件夹mysql复制过来会更容易恢复。但那台机已经重装了系统,也就是说MySQL失效了。