
你作这样的 *** 作无非是因为误删了数据,要进行恢复原数据,又不想冲掉后来更新的新数据,按下面方法来做吧:
1按日期筛选出已经作更新的数据表中数据,并作导出备份
2将你需要恢复导入的数据按更新导入UPDATE
3将第1步已经备份的数据导入UPDATE
先在新的数据库里面建立一个和原来库一样的空数据库,在Mysql的安装目录下找到data目录,你可以看到你刚才建立的数据库名所命名的目录,进入该目录,然后停止mysql,将旧的那一堆frm替换这些目录底下的文件,启动mysql就行了。注意,新mysql的版本要和旧Mysql的版本要一致,否则会出现问题。
但err中没有记录任何错误,只有重启的信息。原来该语句正常执行过,而现在每次执行必定会重现崩溃的情况,使用navicat也有同样问题。语句中使用了mysqludf_preg函数。
附innodb_status如下:
=====================================
2014-08-26 22:07:49 7fa7c74ba700 INNODB MONITOR OUTPUT
=====================================
Per second averages calculated from the last 20 seconds
-----------------
BACKGROUND THREAD
-----------------
srv_master_thread loops: 0 srv_active, 0 srv_shutdown, 139 srv_idle
srv_master_thread log flush and writes: 139
----------
首先我们使用MySQL提供的命令行界面来导入数据库,确保自己的电脑中安装了MySQL数据库,我们可以通过命令行来确认是否安装了MySQL数据库,当然,第一步是打开Mysql的数据库服务,我们使用命令行来打开:如下图所示:
启动MySQL后,我们找到需要用到的脚本文件,也就是数据库文件,当然,我们首先得建立一个数据库,这样才可以导入脚本,如下图所示:
我们在将脚本拷到本地磁盘的根目录,这样方便进入找到脚本,这里以D盘来说明,使用testsql:接着我们来到命令行,使用SOURCE d:/testsql;来导入数据库,先进入mysql,如下图所示:
首先要在数据库中建立好数据库,然后导入脚本,所以先建立一个数据库哦,不要脚本是不知道你要往哪个数据库中导入脚本的,如下图所示:
然后就可以输入导入sql文件命令:
mysql> USE 数据库名;
mysql> SOURCE d:/testsql;
如下图所示:
6
看到上面的画面,说明mysql数据库已经导入成功了哦!
是不是很简单呢现在来介绍第二种方法,使用mysql图形工具导入数据库,我们还是使用testsql脚本来说明:
MySQL命令行导出数据库
1,进入MySQL目录下的bin文件夹:cd MySQL中到bin文件夹的目录
如我输入的命令行:cd C:\Program Files\MySQL\MySQL Server 41\bin
(或者直接将windows的环境变量path中添加该目录)
2,导出数据库:mysqldump -u 用户名 -p 数据库名 > 导出的文件名
如我输入的命令行:mysqldump -u root -p news > newssql (输入后会让你输入进入MySQL的密码)
(如果导出单张表的话在数据库名后面输入表名即可)
3、会看到文件newssql自动生成到bin文件下
命令行导入数据库
1,将要导入的sql文件移至bin文件下,这样的路径比较方便
2,同上面导出的第1步
3,进入MySQL:mysql -u 用户名 -p
如我输入的命令行:mysql -u root -p (输入同样后会让你输入MySQL的密码)
4,在MySQL-Front中新建你要建的数据库,这时是空数据库,如新建一个名为news的目标数据库
5,输入:mysql>use 目标数据库名
如我输入的命令行:mysql>use news;
6,导入文件:mysql>source 导入的文件名;
如我输入的命令行:mysql>source newssql;
MySQL备份和还原,都是利用mysqldump、mysql和source命令来完成的。
先在新的数据库里面建立一个和原来库一样的空数据库,在Mysql的安装目录下找到data目录,你可以看到你刚才建立的数据库名所命名的目录,进入该目录,然后停止mysql,将旧的那一堆frm替换这些目录底下的文件,启动mysql就行了。
注意,新mysql的版本要和旧Mysql的版本要一致,否则会出现问题。
记事本是可以打开的,我曾经打开过4G的文件,虽然等待了很长时间。
2个表的数据结构不一样是肯定不行的,而且sql导出的文件是那种最基础的insert语句,所以要先转换一下。
先建一个和2g文件一样的表,然后把数据导入。
然后写个和新表一样结构的select文件,然后再导出来。
这里要考虑一下是否存在不可重复的列,比如自增ID,这个就不要导出了,不然和新表会有冲突的。
1、可能是因为本身源文件中带有大型,在导入时会一并导入进去。
2、检查数据库中的格式是否符合,是否存在更大的尺寸。
3、检查数据库中是否存在重复的,如果有的话就会导致变大。
以上就是关于mysql 数据库导入 如果原来表数据在导出之后有新的数据 增加或更改全部的内容,包括:mysql 数据库导入 如果原来表数据在导出之后有新的数据 增加或更改、MYSQL 导入数据库 只有文件--是一堆.FRM的文件和DB.OPT、mysql 5.7.17 导入数据库后 执行查询语句 服务挂掉等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)