如何从Eclipse中导出数据库文件.db

时间:2022-11-07 06:31:59
本开始想导出数据库文件,看看里面的字段,数据,以便以后调试bug所用,结果出现了跟多问题,现在归纳一下自己所遇到的问题


   1.Eclipse中DDMS FileExplorer 的/data文件夹 是drwxrwxr权限,是只读权限,必须更改才能伸展出子文件,所以想改权限。
     由于/data 是系统文件,所以必须要先获得ROOT权限(本人用的真机华为G6 c0电信版)上网查找了一下,华为定制机,首先要解锁。
     所以百度了解锁过程,去官网申请了解锁码。成功解锁后,才能进行recovery,刷新过程。不过自己只是想要获得ROOT权限,所以用360
     一键ROOT 就OK了。


   2.获得ROOT权限之后,下载一个 RE文件管理器(ROOT explorer),就可以用手机查看到系统文件夹下/data/data/项目名包/databases/数据库
    了,可以直接查看,所以这个APP 很强大。(只是给手机端ROOT explorer 有ROOT权限)


   3.之后想导出系统文件夹里的数据库文件的话,必须要用Linux 命令行 通过adb 修改/data/data/项目名包/databases/数据库的权限
     (1)管理员身份打开cmd  进行代码行操作
adb devices
         adb shell
adb su (管理员身份登录)
C:\Documents and Settings\Administrator>adb shell
shell@umts_spyder:/$ su
su
root@umts_spyder:/# chmod 777 -R /data
chmod 777 -R /data
Unable to chmod -R: No such file or directory
root@umts_spyder:/#
只能一个一个文件夹去设置权限 
 root@umts_spyder:/# chmod 777 /data
chmod 777 /data
root@umts_spyder:/# chmod 777 /data/data
chmod 777 /data/data
root@umts_spyder:/#
      注意:使用adb shell命令,但android下的shell是阉割了的 不能用-R参数 既使su到root帐号也执行不了


  4。修改权限以后就用adb pull 命令从手机端 导入到 计算机。
    PC与模拟器或真机交换文件(adb pull和adb push)
在开发阶段或其他原因,经常需要将PC上的文件复制到模拟器或真机上,或将模 拟机和真机上的文件复制到PC上。使用adb pull和adb push命令可以很容易完成这个工作。例


如,下面的命令将真机的SD卡根目录下的camera.jpg文件复制到PC的当前目录,取名为picture.jpg。又把picture.jpg文件复制到真机的SD卡根目录,取名为abc.jpg。
从真机上复制文件到PC
adb -s HT9BYL904399 pull /sdcard/camera.jpg picture.jpg
从PC复制到文件到真机
adb -s HT9BYL904399 push picture.jpg /sdcard/abc.jpg

如果读者安装了ADT,可以通过DDMS透视图的【File Explorer】视图右上方的 几个按钮方便地从模拟器或真机上导入、导出和删除文件。


  我的CMD 命令行 是 : adb -s 9cc172715447[手机设备号] pull /data/data/项目包名/databases/数据库名 d:\  


如何从Eclipse中导出数据库文件.db