先up你是想用ftp软件将mysql目录上传上去,还是用程序insert上去

解决方案 »

  1.   

    dump出来,然后ftp上去,然后在服务器上做个脚本import进数据库
      

  2.   

    mysqldump --opt database | mysql --host=remote-host -C database直接将数据库dump另外一个mysql服务器上
      

  3.   

    or:backup:
    mysqldump --opt databaseName > backup-file.sql
    restore:
    mysql databaseName < backup-file.sql
      

  4.   

    谢老兄.我有点笨.问清楚一点.我用的是windows xp兄台说的这个东东我真的没有用过.你能加上注释吗?在那里运行.谢谢.我太笨了.
      

  5.   

    <?php
    /*_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-    Copyright limuyuan 2000-2008
        批量上传
        I'm Crazy Programmer  anziqi
    思路:
    _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-*/
    session_start();
    @$linkid = mysql_pconnect("localhost","root") or die (print "无法链接数据库!");
    if(!$_SESSION['id']) 
    {
    session_register('id','m');
    $_SESSION['id']=0;
    }
    /*
    if(!@mysql_select_db("test1")) 
    {
    mysql_create_db("test1");
        }
    if(!@mysql_query("select count(*) from dt_product"))
    {
    $sql="CREATE TABLE dt_product (  tp_id int(11) NOT NULL auto_increment,tp_model varchar(254) default NULL,  tp_type varchar(254) default NULL,  tp_userid bigint(3) default NULL,  tp_maker varchar(254) default NULL,  tp_enc varchar(254) default NULL,  tp_unit varchar(50) default NULL,  tp_price int(11) default NULL,  tp_stock int(11) default NULL,  tp_notes text,  tp_num int(11) default NULL,  PRIMARY KEY  (tp_id),  KEY tp_userid (tp_userid),  KEY tp_model (tp_model)) TYPE=MyISAM;";
    @mysql_query($sql) or die (print "无法执行SQL语句!");
        print "create ok";
    }
    */
    $resu=mysql_db_query("iwn","select * from dt_product where tp_id>".$_SESSION['id']); while($aa=mysql_fetch_array($resu))  {

     $sql_str="INSERT INTO `dt_product` (`tp_id`, `tp_model`, `tp_type`, `tp_userid`, `tp_maker`, `tp_enc`, `tp_unit`, `tp_price`, `tp_stock`, `tp_notes`, `tp_num`) VALUES ('".$aa['tp_id']."','".$aa['tp_model']."', '".$aa[tp_type]."', '".$aa[tp_userid]."', '".$aa[tp_maker]."',' ".$aa[tp_enc]."',' ".$aa[tp_unit]."',' ".$aa[tp_price]."', '".$aa[tp_stock]."',' ".$aa[tp_notes]."',' ".$aa[tp_num]."')";
    mysql_db_query("test1",$sql_str);
    print $_SESSION['id']=$aa['tp_id'];
    $_SESSION['m']++;
    print "已经添加了".$_SESSION['m']."<br>";

    }
    print "添加完成";
     
    ?>这是我的一个程序就是一条条的添加了,但是有一个问题就是他会超时.
    所以我为了防止他超时在select上作了一个session来记录id值.那种加多少条.跳转一下的方面我也用了.但也会出现超时现象.而且慢.如果是用这种程序来做的话.大侠们有没能好的办法.我真的太笨了.
      

  6.   

    进入dos
    mysql\bin目录下面有这个mysqldump命令,专门用来备份数据库的命令
    可以将数据库倒入到文本。也可以直接copy到另外一个服务器你直接敲入mysqldump就会出来帮助
      

  7.   

    可以这样吗:你是想用ftp软件将mysql目录上传上去是怎么传的.这个东东放上去就可以用了吗?
      

  8.   

    对于你的程序用一句sql语句就可以搞定了create table dt_product select * from iwn.dt_product
      

  9.   

    mysql数据库备份方法:
    1.拷贝数据库源文件.你到mysql\data目录兄面看看,下面一个目录代表一个数据库。拷贝目录到另外一个服务器就是新建一个数据库了。linux下面注意扩展名大小写问题
    2.mysqldump
    3.自己写程序
      

  10.   

    对于第一种方法,在linux下面可能不是data目录,而是mysql目录,自己找找就知道了
    对于第三种,wasy以前写过一个备份程序。
      

  11.   

    设置不超时可以用set_time_limit(0)就可以了,不过你不需要那么做就可以达到目的,就使用mysqldump就可以
      

  12.   

    create table dt_product select * from iwn.dt_product适用于本地和服务器两个库吗?
      

  13.   

    CGI Timeout
    The specified CGI application exceeded the allowed time for processing. The server has deleted the process.
    是超时吧.我用了set_time_limit(0);
    怎么还是这样.
      

  14.   

    可能不适合,不敢确定,没有试过。
    try:
    otherServerName.iwn.dt_product
    不过用户名和密码肯定要能够连上那个server的我是根据你的程序来写的。你程序里面只是同一个数据库你还是用mysqldump或者直接拷贝较好
      

  15.   

    mysqldump原理是什么.生成文件后把他放在别一个库中就可以使用.还是怎么的.我在phpadmin中导过一次因为太大好象也有超时所以失败.如果是copy文件.我没有ftp的密码.
      

  16.   

    另外一台服务器是linux吗
    你到底有没有那台服务器的权限???如果你有ftp用户名和密码,以及mysql数据库目录的写权限,你才可以用ftp的方法将文件上传上去否则你只有用程序来实现。当然phpmyadmin也是程序。
    你如果用phpmyadmin导出,可以将倒出的语句一部分一部分的执行。你也可以用你上面提供的程序,每次循环的时候先检查程序已经化了多长时间
    ,如果快到超时时间,记下当前的循环次数$n,并存为session,然后重新转向该页再执行一次,不过这时候要用mysql_data_seek直接转到记录集的第$n行,然后再循环,$n递加,如此循环就会下去就可以搞定
      

  17.   

    提示错误,可能是因为里面有#,这是phpmyadmin的bug
    你可以自己写程序