看看jdbc:oracle:thin:@192.168.88.205:1521:test能不能访问,可以 telnet 192.168.88.205 1521试试
1 创建用户语句,赋权限
create user 用户名 identified by 密码;
grant connect,resource,dba to 用户名;
2 导入导出数据库
exp system_V1/12345@196.168.1.10:1521/iwms file=d:/wenjian.dmp owner=(system_V1)
imp system_V2/88075998@196.168.1.10:1521/orcl full=y file=d:/wenjian.dmp ignore=y
3 如何清空一个数据库
先导入一个数据库,然后使用这条语句,获取到所有删除表记录的语句,批量执行即可,用plsql导出功能,导出这些批量sql
select 'delete table '||table_name||';' from user_tables
4 “||”在oracle或SQL中的作用
连接字符串或者查询结果中的字段,比如 select column1||column2 from table; select '123'||'456'||'789' from dual;
数据导出:
1 将数据库TEST完全导出,用户名system 密码manager 导出到D:\daochu.dmp中
exp system/manager@196.168.1.10:1521 file=d:\daochu.dmp full=y
2 将数据库中system用户与sys用户的表导出
exp system/manager@196.168.1.10:1521 file=d:\daochu.dmp owner=(system,sys)
3 将数据库中的表table1 、table2导出
exp system/manager@196.168.1.10:1521 file=d:\daochu.dmp tables=(table1,table2)
4 将数据库中的表table1中的字段filed1以"00"打头的数据导出
exp system/manager@196.168.1.10:1521 file=d:\daochu.dmp tables=(table1) query=\" where filed1 like '00%'\"
上面是常用的导出,对于压缩我不太在意,用winzip把dmp文件可以很好的压缩。
不过在上面命令后面 加上 compress=y 就可以了
数据的导入
1 将D:\daochu.dmp 中的数据导入 TEST数据库中。
imp system/manager@TEST file=d:\daochu.dmp
上面可能有点问题,因为有的表已经存在,然后它就报错,对该表就不进行导入。
在后面加上 ignore=y 就可以了。
2 将d:\daochu.dmp中的表table1 导入
imp system/manager@TEST file=d:\daochu.dmp tables=(table1)
基本上上面的导入导出够用了。不少情况我是将表彻底删除,然后导入。
注意:
你要有足够的权限,权限不够它会提示你。
数据库时可以连上的。可以用tnsping TEST 来获得数据库TEST能否连上。
数据导出:
exp hkb/hkb@@196.168.1.10:1521 full=y file=c:\orabackup\hkbfull.dmp log=c:\orabackup\hkbfull.log;
导出注意事项:导出的是当前用户的的数据,当前用户如果有DBA的权限,则导出所有数据!
同名用户之间的数据导入:
imp hkb/hkb@@196.168.1.10:1521 file=c:\orabackup\hkbfull.dmp log=c:\orabackup\hkbimp.log full=y
不同名之间的数据导入:
imp system/test@@196.168.1.10:1521 fromuser=hkb touser=hkb_new file=c:\orabackup\hkbfull.dmp
log=c:\orabackup\hkbimp.log;
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------1. 复制表结构及其数据: create table table_name_new as select * from table_name_old
2. 只复制表结构: create table table_name_new as select * from table_name_old where 1=2; 或者: create table table_name_new like table_name_old
3. 只复制表数据:如果两个表结构一样:insert into table_name_new select * from table_name_old
如果两个表结构不一样:insert into table_name_new(column1,column2...) select column1,column2... from table_name_old