编程论坛's Archiver

jalonlovesja 发表于 2008-3-4 11:42

Oracle 备份

asp.net里面写程序怎么备份数据啊??我用的是Oracle数据库了
  请高手指点了,小弟对oracle不熟练了。
谢谢!!

比蜗牛快些 发表于 2008-3-5 20:05

执行oracle 的imp(导入)exp(导出)命令
整个数据库  
exp system/manger@sid full=y buffer=32726 file=d:\oracle_bak\data.dmp;  
用户级备份  
exp scott/tiger@DSID file=d:\oracle_bak\data.dmp users(scott) buffer=2048;  
表备份  
exp scott/tiger@SID file=d:\oracle_bak\date.dmp tables(emp,dept)     buffer=2048;  
表空间备份  
exp system/manger@sid file=d:\oracle_bak\date.dmp tablespaces(users,system)   buffer=2048;

比蜗牛快些 发表于 2008-3-6 20:05

回复 1# 的帖子

private void button1_Click(object sender, System.EventArgs e)
        {
            SqlConnection con=new SqlConnection("database=master;user id=sa;password=sa;data source=(local);pooling=false");
            SqlCommand cmd=new SqlCommand();
            cmd.Connection=con;
            cmd.CommandText="exec sp_attach_db @dbname,@filename1,@filename2";
            SqlParameter para=cmd.Parameters.Add("@dbname",SqlDbType.VarChar,20);
            para.Value="abc";
            para=cmd.Parameters.Add("@filename1",SqlDbType.NVarChar,260);
            para.Value=Application.StartupPath+"\\abc_Data.MDF";
            para=cmd.Parameters.Add("@filename2",SqlDbType.NVarChar,260);
            para.Value=Application.StartupPath+"\\abc_Log.LDF";
            con.Open();
            cmd.ExecuteNonQuery();
            con.Close();
            MessageBox.Show("已成功附加数据库");
        }

private void button2_Click(object sender, System.EventArgs e)
        {
            SqlConnection con=new SqlConnection("database=master;user id=sa;password=sa;data source=(local);pooling=false");
            SqlCommand cmd=new SqlCommand();
            cmd.Connection=con;
            cmd.CommandText="exec sp_detach_db @dbname,@skipchecks";
            SqlParameter para=cmd.Parameters.Add("@dbname",SqlDbType.VarChar,20);
            para.Value="abc";
            para=cmd.Parameters.Add("@skipchecks",SqlDbType.NVarChar,10);
            para.Value="true";
            con.Open();
            try
            {
                cmd.ExecuteNonQuery();
            }
            catch(SqlException er)
            {
                MessageBox.Show(er.Message);
                return;
            }
            con.Close();
            MessageBox.Show("已成功分离数据库");
        }

飙马 发表于 2008-3-21 10:16

2 楼的逻辑备份是比较全的,涵盖了四种情况!也可以直接输入Exp,按照提示一步一步来........

页: [1]

Powered by Discuz! Archiver 6.1.0  © 2001-2007 Comsenz Inc.