由于机器龟速运行,决定分开跑,然后把数据合并,需要将mysql中的数据倒来倒去,没想到其中过程还蛮乱的,这里做个笔记,Mark一下。

命令行

1.数据库字符集问题

   为了避免乱码的问题,先确定下database的编码是何种。

   我在data的源电脑上的mysql command中输入 show variables like '%char%' 记得加分号执行

   执行后,发现database的value为uft8

   在data的目的电脑上输入,发现为latin1,于是修改data目的电脑上的字符编码格式:set charcter_set_database=uft8

   这样格式一致,乱码就避免了

2.从源电脑导出数据

   cmd中进入mysql安装下的bin目录,运行mysql -u [username] -p [database] [table] > [保存地址]

                                                                    我的语句是:mysql -u root -p python uni > f:/data/uni.sql  保存在f盘data文件夹下的uni.sql中也可以保存为uni.txt

  ok,可以用u盘拷贝,然后转移到目的电脑

3.导入数据

load data local infile 'f:/data/uni.sql' into table uni  (如果保存为txt,则是f:/data/uni.txt)

   打开表格查看,导入ok~~

利用navicat

但是在利用命令的时候,在windows环境中碰到了权限问题,没有解决好,后来利用nvcicat导出的,发现navcat导出txt比较快

利用navicat导出txt的流程如下:

   1.点中要导出的表格,然后右击,选择导出

   2.默认就是txt导出,下一步

   3.选择好保存的地方,这里可以添加多个要导出的表格,当然记得设置保存的地方

   4.选择导出的列,可以部分,可以全部,默认是全部,继续下一步就好

   5.这里定义了额外的选项,记得选择包含列标题,这样导出的txt就不是只有光秃秃的数据了,还包括了相应的列名,继续下一步

   6.点击开始,然后用notepad打开txt,保存ok,其中每行的数据之间是用tab隔开的

利用navicat导入txt的流程:

   1.直接在相应数据库下的空白地方,右击,选择导入

   2.导入格式默认为txt,选择下一步

   3.设置好导入文件的存储地点

   4.这一步的一些设置没弄太清楚,点击下一步

   5.这里可以设置一些附带选项,第一栏设置为2,这样保存的列名就不会认为是数据记录了,点击下一步

   6.继续选择的是目的表:如果导入的表是新建的,则要设置列的属性;如果已经存在了,可以控制列与列之间的映射关系