昨晚操作多台服务器时错误地在一台老的机器上执行了 drop database 命令,删除了数据库,搞到很晚也没搞定,有经验的朋友指点一下!
环境Linux AS5,mysql版本为5.0.18,data目录下我建的数据库文件夹也没有了,只有三个文件:
ibdata1,ib_logfile0,ib_logfile1请大家指点!!!急!

解决方案 »

  1.   

    有没有备份 和binlog ?没有的话.就没办法了,神仙也没办法..
      

  2.   

    ibdata1,ib_logfile0,ib_logfile1   这些是不是 binlog ?
    bin下面有mysqlbinlog命令
      

  3.   

    ysql> show variables like 'log_bin';
    +---------------+-------+
    | Variable_name | Value |
    +---------------+-------+
    | log_bin       | OFF   |
    +---------------+-------+
    看你的二进制日志是否开着
      

  4.   

    是off就没救了吗?
    我的是off啊
      

  5.   


    你的是innodb吗?还是myisam呢?
      

  6.   

    可以,但是完全恢复所有的表不一定可以工具: innodb-recoveryOfficial Website: http://code.google.com/p/innodb-tools/This set of tools could be used to check InnoDB tablespaces and to recover data from damaged tablespaces or from dropped/truncated InnoDB tables. 这个工具用来检查InnoDB空间表和恢复由于drop 以及truncate引发的损坏空间表的数据库门此工具使用需要安装Perl的一些插件,有:DBIMysql::DBD恢复前提,提了以上的插件外,如果在使用时有报少插件,则需要找到少的插件,再安装另外, 恢复数据的前提是,数据库使用的是innodb引擎,当用'DROP DATABASE DBNAME'后,没有再做其它操作,保证ibdata1文件的完整性及不被后续写数据破坏执行恢复的过程中,有一步是需要注意的,就是"Recovery steps: Preparing the code for recovery"默认生成的表结构中的一些列属性的格式是不精确的,你需要精确这些属性,恢复的概率才会提高######################Note that this is a translation of the table format into what InnoDB Tools use internally as a C program. You may need to edit this file later on, to force some constraints on the recovered data. #####################当你按照 http://code.google.com/p/innodb-tools/wiki/InnodbRecoverySteps 里的步骤操作完,并恢复数据后,相信, 你以后再也不会范类似的错误了,因为这个过程是蛮长的,当然,前提是你的数据表多以及数据量大。
     
      

  7.   

    我用的是mysql-standard-5.0.18-linux-i686.tar.gz,解压后只修改了字符集,其它没做任何修改,mysqldbd说的innodb和myisam,如何查看?
      

  8.   

    innodb和myisam是表的存储引擎类型,这个你需要去查看原始文档了,一般 desc tablename; 后面就会有存储引擎类型的描述。
    show create table csf.accnt_role;
    -- 
    CREATE TABLE `accnt_role` (
      `role_id` int(10) NOT NULL AUTO_INCREMENT,
      `role_name` varchar(100) NOT NULL,
      `role_stat` tinyint(2) NOT NULL DEFAULT '1',
      `uptime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
      PRIMARY KEY (`role_id`)
    ) ENGINE=MyISAM AUTO_INCREMENT=10 DEFAULT CHARSET=utf8 COMMENT='角色表'
      

  9.   

    启动是用的 mysqld -u root & 命令, 还有救吗?
      

  10.   

    ENGINE=InnoDB DEFAULT CHARSET=gbk是生产库,给客户的,上线时间不是太长,还没正式做定期备份数据,会员数据的excel还有,这一点是可以做还原的,但是后面会员修改的东西就没有了。InnoDB 类型的.
    我用你说的方法试试,多谢!!!
      

  11.   

    基本上没什么好办法了。只能考虑硬盘上的数据恢复,把原来的文件恢复出来。网上有一些工具可以恢复LINUX下被删除的文件,但要看运气。
      

  12.   

    网上有一些工具可以恢复LINUX下被删除的文件,但要看运气。
    从linux上恢复出来后, 可以试试分析innodb文件的内容。
      

  13.   


    innodb应该是可以恢复的吧!