1、在Windows的服务中“OracleServiceWINSOM”服务的状态为“启动”,所能执行的任务也都是灰色的。Oracle没有正常的启动。
   解决:run:cmd
         svrmgrl
         connect internal/oracle
         shutdown immediate
         startup
2、导入,导出数据
   a、删除一个用户:
      drop user smartweb CASCADE
   b、创建一个用户:
      create user smartweb identified by smartweb
   c、给用户赋予权限:
      grant connect to smartweb
      grant resource to smartweb
      grant create session to smartweb
   d、连接:
      conn smartweb/smartweb
   e、导入:
      imp
3、查看oracle的版本
   select * from v$version
4、修改oracle中的Oracle Servlet Engine(OSE)所占的8080端口(TNSLSNR.exe)。
   安装Oracle 9i后8080端口被OSE占用,即tnslsnr.exe进程所占用。清除此端口方法:
   cd $ORACLE_HOME/jis/install
   sess_sh -u sys/change_on_install -role SYSDBA -s jdbc:oracle:oci8:@yhp
   $@serverendp.ssh
   $exit
5、imp时,出现的错误:不支持要求的字符集转换(从类型850到852)
   使用函数NLS_CHARSET_NAME即可获得该字符集:
   SQL> select nls_charset_name(1) from dual;
NLS_CHARSET_NAME(1)
-------------------
US7ASCII
可以知道该dmp文件的字符集为US7ASCII,如果需要把该dmp文件的字符集换成ZHS16GBK,则需要用NLS_CHARSET_ID获取该字符集的编号:
SQL> select nls_charset_id('zhs16gbk') from dual;
NLS_CHARSET_ID('ZHS16GBK')
--------------------------
852
把852换成16进制数,为354,把2、3字节的00 01换成03 54,即完成了把该dmp文件字符集从us7ascii到zhs16gbk的转化,这样,再把该dmp文件导入到zhs16gbk字符集的数据库就可以了。(注意,十进制数与十六进制之间的转换,想明白其中的道理)