(oracle/mysql)启停,导入导出,DB字符集

====================================================================================

DB启动停止

====================================================================================

[oracle操作]

1、启动数据库:

oracle@suse92:~> sqlplus /nolog
SQL*Plus: Release 9.2.0.4.0 - Production on Fri Jan 20 02:29:37 2006
Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.
SQL> connect /as sysdba
Connected to an idle instance.
SQL> startup
ORACLE instance started.
Total System Global Area 135352820 bytes
Fixed Size 455156 bytes
Variable Size 109051904 bytes
Database Buffers 25165824 bytes
Redo Buffers 679936 bytes
Database mounted.
2、关闭数据库:
oracle@suse92:~> sqlplus /nolog
SQL*Plus: Release 9.2.0.4.0 - Production on Fri Jan 20 02:29:37 2006
Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.
SQL> connect /as sysdba
Connected to an idle instance.
SQL> shutdwon abort;
3、启动监听器
oracle@suse92:~> lsnrctl start
4、停止监听器
oracle@suse92:~> lsnrctl stop
5、查看监听器状态
  oracle@suse92:~> lsnrctl
  LSNRCTL> status
  LSNRCTL> exit
-------------------------------------------------------------------
More Detail:
三、ORACLE实例启动和关闭

1、使用SQL*PLUS启动和终止实例

1.1、本地启动
  在命令提示符下输入:
  SQLPLUS /NOLOG
  CONNECT /AS SYSDBA
  STARTUP

1.2、本地关闭
  在命令提示符下输入:
  SQLPLUS /NOLOG
  CONNECT /AS SYSDBA
  SHUTDOWN

1.3、远程启动
  在命令提示符下输入(此方式必须先进行关闭数据库操作,见1.4、远程关闭(要求远程数据库必须是已启动),在E:/ORACLE/ORA81/SYSMAN/IFILES目录下生成一个DE_TEST_ZCB_8112.ORA文件后,再以此文件启动数据库):
  SQLPLUS /NOLOG
  CONNECT INTERNAL/ORACLE@TEST.SOFTONE.COM AS SYSDBA
  STARTUP FILE=E:/ORACLE/ORA81/SYSMAN/IFILES/DE_TEST_ZCB_8112.ORA
  此路径为远程启动服务路径,一般情况下在本地安装目录的ORACLE/ORA81/SYSMAN/IFILES下。
INTERNAL 为用户名,ORACLE为密码,TEST.SOFTONE.COM为远程服务连接串。

1.4、远程关闭
  在命令提示符下输入:
  SQLPLUS /NOLOG
  CONNECT INTERNAL/ORACLE@TEST.SOFTONE.COM AS SYSDBA
  SHUTDOWN
  INTERNAL 为用户名,ORACLE为密码,TEST.SOFTONE.COM为远程服务连接串。

2、 用服务器管理器启动和终止实例

2.1、本地启动
  在命令提示符下输入:
  SVRMGRL
  CONNECT INTERNAL
  STARTUP

2.2、本地关闭
  在命令提示符下输入:
  SVRMGRL
  CONNECT INTERNAL
  SHUTDOWN

2.3、远程启动
  在命令提示符下输入(此方式必须先进行关闭数据库操作,见2.4、远程关闭(要求远程数据库必须是已启动),在E:/ORACLE/ORA81/SYSMAN/IFILES目录下生成一个DE_TEST_ZCB_8112.ORA文件后,再以此文件启动数据库):
  SVRMGRL
  CONNECT INTERNAL/ORACLE@TEST.SOFTONE.COM AS SYSDBA
  STARTUP
  PFILE= E:/ORACLE/ORA81/SYSMAN/IFILES/DE_TEST_ZCB_8112.ORA
  INTERNAL 为用户名,ORACLE为密码,TEST.SOFTONE.COM为远程服务连接串。
  此路径为远程启动服务路径,一般情况下在本地安装目录的ORACLE/ORA81/SYSMAN/IFILES下。

2.4、远程关闭
  在命令提示符下输入:
  SVRMGRL
  CONNECT INTERNAL/ORACLE@TEST.SOFTONE.COM AS SYSDBA
  SHUTDOWN
 
 
[mysql操作]
  sudo su - mysql
  service mysql.ser start/stop
 

====================================================================================

DB导入导出

====================================================================================

 ==ORACLE=======

exp system/xx@XE file=d:\daochu.dmp full=y

exp system/xx@XE file=d:\daochu.dmp owner=(hr)

 *****************************

imp cfpay/cfpay@XE  file=d:\cftest1.dmp

imp system/xx@XE  file=d:\cftest1.dmp

imp system/xx@xe fromuser=cfpay touser=cfpay file=d:\cftest1.dmp

*****************************

exp cfpay/cfpay@CFEC_TEST_13 file=d:\TBL_CBT_REMIT.dmp owner=(cfpay)

imp cfpay/cfpay@com.hpos file=d:\TBL_CBT_REMIT.dmp full=y

 

==MYSQL==================================

一、导入导出本地数据库
   导出:

   1、先运行cmd,cd 到mysql安装目录中的bin文件夹

   2、mysqldump -u root -p 数据库名 > 导出文件名.sql

 其他情况下:

  1.导出整个数据库
    mysqldump -u 用户名 -p 数据库名 > 导出的文件名
    mysqldump -u wcnc -p smgp_apps_wcnc > wcnc.sql
  2.导出一个表
    mysqldump -u 用户名 -p 数据库名 表名> 导出的文件名
    mysqldump -u wcnc -p smgp_apps_wcnc users> wcnc_users.sql
  3.导出一个数据库结构
    mysqldump -u wcnc -p -d --add-drop-table smgp_apps_wcnc >d:\wcnc_db.sql
-d 没有数据 --add-drop-table 在每个create语句之前增加一个drop table

   导入:

  1、 dos命令下进入sql:先create database 数据库名;

  2、use 数据库;

  3、source c:\....\文件名.sql,后面不需要加分号

二、远程导入导出数据库

out:

mysqldump -u 用户名 -p 数据库名 > 导出的文件名

mysqldump -h119.12.12.11 -u -p dev > d:\mysql_out.sql

in:

mysql -h119.12.12.11 -uaspchina -paspchina123456 aspchina< d:\aspchina_net.sql

 

三、如果需要导出mysql里面的函数或者存储过程
      mysqldump -h  hostname -u  username   -ntd -R   databasename  > backupflie.sql  (包括存过过程和函数一次性完整导出)
     
        其中的 -ntd 是表示导出表结构和数据;-R是表示导出函数、存储过程

====================================================================================

DB字符集

====================================================================================

 修改oracle 10g的字符集
Oracle
修改数据库字符集为:ZHS16GBK
查看服务器端字符集SQL > select * from V$NLS_PARAMETERS
修改:$sqlplus /nolog
SQL>conn / as sysdba
若此时数据库服务器已启动,则先执行 SHUTDOWN IMMEDIATE 命令关闭数据库服务器,
然后执行以下命令:
SQL>shutdown immediate
SQL>STARTUP MOUNT
SQL>ALTER SYSTEM ENABLE RESTRICTED SESSION
SQL>ALTER SYSTEM SET JOB_QUEUE_PROCESSES=0
SQL>ALTER SYSTEM SET AQ_TM_PROCESSES=0
SQL>ALTER DATABASE OPEN
SQL>ALTER DATABASE CHARACTER SET ZHS16GBK


ERROR at line 1RA-12721: operation cannot execute when other sessions are active
若出现上面的错误,使用下面的办法进行修改,使用INTERNAL_USE可以跳过超集的检查:
SQL>ALTER DATABASE CHARACTER SET INTERNAL_USE ZHS16GBK
SQL>SHUTDOWN IMMEDIATE
SQL>STARTUP

 

 

  修改mysql 5.5的字符集

 一、建库,建表,录数据(重新来)
1.

mysql -hcom.dier -udev -p

CREATE DATABASE dev_utf8 DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;

2.dbschema -create db tables;

3.genData;

二、从现有数据改造(包括系统升级,中文编码改造)
1.

mysql -hsl-huapox -udev -p

CREATE DATABASE dev_utf8 DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;

2.=============
第一步,导出旧库
    (mysqldump --default-character-set=latin1 -uroot -p fol > /tmp/old.sql)
    mysqldump -hcom.dier -udev -p dev>fout.sql
第三步,使用iconv工具转换编码
    iconv -t utf-8 -f gb2312 -c fout.sql > fout_utf8.sql
第二步,打开old.sql,将CHARSET=latin1修改成CHARSET=utf8 。
    sed -i s/CHARSET=latin1/CHARSET=utf8/g `grep -rl "CHARSET=latin1" fout_utf8.sql `
第四步,导入新库
修改new_utf8.sql,增加一条sql语句:"SET NAMES utf8;",保存。
如果是大文件,建议使用sed命令插入,如
    sed -i '1 i\SET NAMES utf8;'
即在1行之前插入一条SQL语句。

    mysql -hcom.dier -udev -p
    use dev_utf8;
    source fout_utf8.sql

 

posted @ 2014-02-10 15:09  linux,dev  阅读(558)  评论(0编辑  收藏  举报