`
heiheben
  • 浏览: 136674 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

Oracle10g Express 版本修改字符集全过程

阅读更多

安装原因

    1.可以学习一下PowerDesigner

    2.可以防止损坏公司服务器数据

选择Oracle10g XE版本原因

    1.免费、小巧

    2.使用的人多,出问题好查资料

    3.可以为后续的数据库学习积累经验

安装过程

    打开安装文件,选择路径为D:\oraclexe,然后一路next。OK

问题发现

    打开pl/sql developer,提示客户端和服务器端字符集不同。

    使用sysdba身份登录,使用sql

    select * from nls_database_parameters;

    查看字符集得知:

    1.别的服务器使用的字符集都是ZHS16GBK

    2.我安装的服务器字符集为AL8UTF8。

解决方法

    更改本地服务器的字符集

    尝试一(直接修改字符集)

    --关闭数据库实例

    SQL> SHUTDOWN IMMEDIATE;

    --创建一个Oracle实例。读取init.ora初始化参数文件、启动后台进程、初始化系统全局区(SGA)

    SQL> STARTUP nomount;     

    --由实例安装数据库  

    SQL> ALTER DATABASE mount exclusive;

    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;

    --设置字符集为ZHS16GBK

    SQL> ALTER DATABASE CHARACTER SET ZHS16GBK;

    ERROR at line 1:
    ORA-12712: new character set must be a superset of old character set
提示我们的字符集:新字符集必须为旧字符集的超集,这时我们可以跳过超集的检查做更改(UTF8可以根据需要更改,如ZHS16GBK

    --跳过限制直接修改
    SQL> ALTER DATABASE CHARACTER SET INTERNAL_USE ZHS16GBK;
    --重启数据库

    SQL>SHUTDOWN IMMEDIATE;

    SQL>STARTUP

  

    启动后发现,乱码问题严重。特别是HTMLDb(就是配置数据库页面)

 

    尝试二(重新建立一个新的数据库)

    1.建立新的数据库文件存放目录D:\oraclexe\oradata\MXE

    2.将文件D:\oraclexe\app\oracle\product\10.2.0\server\config\scripts\init.ora

    拷贝至D:\oraclexe\app\oracle\product\10.2.0\server\config\scripts\minit.ora

    3.修改2中的文件minit.ora,将路径目录替换为D:\oraclexe\oradata\MXE

    修改后,文件minit.ora内容如下 

  

###############################################
# Copyright (c) 1991, 2005, Oracle. All rights reserved. 
###############################################
 
###########################################
# Cursors and Library Cache
###########################################
open_cursors=300
 
###########################################
# Database Identification
###########################################
db_name=XE
 
###########################################
# Diagnostics and Statistics
###########################################
background_dump_dest=D:\oraclexe\oradata\MXE\bdump
core_dump_dest=D:\oraclexe\oradata\MXE\cdump
user_dump_dest=D:\oraclexe\oradata\MXE\udump
 
###########################################
# File Configuration
###########################################
control_files=("D:\oraclexe\oradata\MXE\control.dbf")

###########################################
# Job Queues
###########################################
job_queue_processes=4
 
###########################################
# Miscellaneous
###########################################
compatible=10.2.0.1.0
 
###########################################
# Processes and Sessions
###########################################
sessions=20
 
###########################################
# SGA Memory
###########################################
sga_target=570M
 
###########################################
# Security and Auditing
###########################################
audit_file_dest=D:\oraclexe\oradata\MXE\adump
remote_login_passwordfile=EXCLUSIVE
 
###########################################
# Shared Server
###########################################
dispatchers="(PROTOCOL=TCP) (SERVICE=XEXDB)"
shared_servers=4

###########################################
# Sort, Hash Joins, Bitmap Indexes
###########################################
pga_aggregate_target=190M
 
###########################################
# System Managed Undo and Rollback Segments
###########################################
undo_management=AUTO
undo_tablespace=UNDO

###########################################
# Backup and Recovery
###########################################
DB_RECOVERY_FILE_DEST_SIZE = 10G
DB_RECOVERY_FILE_DEST = D:\oraclexe\app\oracle\flash_recovery_area

os_authent_prefix=""

 

   

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

    4.关闭数据库

    SQL>shutdown immediate;

    5.用修改过的pfile minit.ora启动数据库(nomount)
    SQL>startup nomount pfile='D:\oraclexe\app\oracle\product\10.2.0\server\config\scripts\minit.ora'
    6.执行建立数据库脚本
   

CREATE DATABASE XE
CONTROLFILE REUSE
LOGFILE
GROUP 1 'D:\oraclexe\oradata\MXE\REDO01.LOG' SIZE 10M,
GROUP 2 'D:\oraclexe\oradata\MXE\REDO02.LOG' SIZE 10M,
GROUP 3 'D:\oraclexe\oradata\MXE\REDO03.LOG' SIZE 10M
DATAFILE 'D:\oraclexe\oradata\MXE\SYSTEM01.DBF' SIZE 400M
AUTOEXTEND ON NEXT 50M MAXSIZE UNLIMITED
SYSAUX DATAFILE 'D:\oraclexe\oradata\MXE\SYSAUX01.DBF' SIZE 250M
AUTOEXTEND ON NEXT 50M MAXSIZE UNLIMITED
DEFAULT TEMPORARY TABLESPACE temp
TEMPFILE 'D:\oraclexe\oradata\MXE\TEMP01.DBF' SIZE 100M
AUTOEXTEND ON NEXT 50M MAXSIZE 8000M
UNDO TABLESPACE undo
DATAFILE 'D:\oraclexe\oradata\MXE\undo01.DBF' SIZE 100M
AUTOEXTEND ON NEXT 100M MAXSIZE UNLIMITED
CHARACTER SET ZHS16GBK
NATIONAL CHARACTER SET AL16UTF16;

 

alter user sys identified by dakeng;
alter user SYSTEM identified by dakeng;

    7执行创建数据字典和程序包的系统SQL脚本

    @D:\oraclexe\app\oracle\product\10.2.0\server\RDBMS\ADMIN\catalog.sql
    @D:\oraclexe\app\oracle\product\10.2.0\server\RDBMS\ADMIN\catproc.sql

    8关闭数据库,但不停止服务
    SQL> shutdown immediate;

    9用修改过的pfile test.ora启动数据库

    startup  pfile='D:\oraclexe\app\oracle\product\10.2.0\server\config\scripts\minit.ora'

     创建用户表空间:

     create tablespace USERS datafile 'D:\oraclexe\oradata\MXE\USERS01.DBF' size 100m
     AUTOEXTEND ON NEXT 100M MAXSIZE UNLIMITED;

   

分享到:
评论
1 楼 56148083 2010-05-03  
我也看到类似的方式修改oracleXE字符集,安装第一种方法修改后,控制台出现了乱码。
想问一下楼主,用第二种方式 修改字符集后,控制台还会有乱码吗?

相关推荐

    oracle 10g xe 版本更改数据库字符集

    ### Oracle 10g XE 版本更改数据库字符集 在进行Oracle 10g XE数据库的字符集修改时,需要理解几个关键的概念和技术点。本文将详细介绍如何更改Oracle 10g XE数据库的字符集,并提供具体的操作步骤。 #### 一、...

    Oracle 修改字符集

    ### Oracle 修改字符集 在Oracle数据库管理中,有时我们需要更改数据库的字符集以适应不同的语言环境或解决数据兼容性问题。本文将详细介绍如何修改Oracle数据库的字符集,并提供实际操作步骤。 #### 一、理解...

    Oracle Express 修改字符集,升级APEX

    **一、修改Oracle Express字符集** 1. **检查当前字符集** 使用以下SQL查询来查看Oracle XE的当前字符集: ``` SELECT value FROM nls_database_parameters WHERE parameter = 'NLS_CHARACTERSET'; ``` 2. **...

    oracle修改字符集

    针对这种情况,我们可以按照以下步骤来修改Oracle 11g数据库的字符集,使其更改为ZHS16GBK。 首先,确保你有数据库的系统管理员权限,因为修改字符集需要以SYSDBA身份进行。在Windows环境下,打开命令行窗口(cmd)...

    Oracle10G_RAC环境下字符集

    总结,修改Oracle 10g RAC环境下的字符集是一个涉及多个步骤的过程,包括停机、修改参数、启动实例以及验证更改。这个过程需要细心操作,确保所有节点的一致性,以保证数据库的正常运行和数据的正确性。同时,理解...

    Oracle 11g Express 官方linux 64位版本

    Oracle 11g Express Edition(XE)是Oracle公司推出的一款轻量级数据库管理系统,专为开发者和小型团队设计。它是Oracle数据库家族中的免费版本,适用于学习、开发和部署低流量的Web应用程序。在这个官方的Linux 64...

    oracle11g更改字符集

    oracle11g导入报错,很多情况下是字符集不同导致失败,附件为oracle11g更改字符集操作说明,多次实测有效。

    Oracle10g字符集设置,解决中文乱码

    在Windows环境下,Oracle 10g客户端的安装可能会遇到中文乱码问题,这通常是因为新安装的客户端与旧版本(如Oracle 9i)之间的字符集不兼容或者未正确设置导致的。 首先,我们要理解字符集的概念。字符集是一种定义...

    ORACLE11g更改字符集

    在Oracle 11g数据库管理中,更改字符集是一项关键且复杂的操作,它涉及到数据库的启动、关闭以及系统参数的调整。以下是从标题、描述、标签及部分内容中提炼出的知识点,详细阐述了如何在Oracle 11g中更改字符集。 ...

    怎样修改查看Oracle字符集及怎样修改字符集

    需要注意的是,在8i及以上版本的Oracle数据库中,可以通过`ALTER DATABASE`命令来修改字符集,但只能从一个字符集的子集转换到其超集,并且这种操作可能会导致数据丢失或损坏。 1. **修改数据库字符集的步骤** - ...

    Oracle 字符集详解

    修改Oracle字符集通常涉及数据库的创建或升级过程。在创建新数据库时,可以在DBCA(Database Configuration Assistant)中设定字符集。对于已存在的数据库,字符集的更改是一个复杂的过程,可能需要重建数据库或使用...

    修改Oracle数据库字符集的方法

    本文将详细介绍如何在Oracle 10g中通过命令行方式修改数据库字符集。 #### 前提条件 在进行字符集修改之前,请确保满足以下前提条件: 1. **有足够的权限**:必须具备sysdba权限才能执行这些操作。 2. **备份...

    oracle字符集的查看和client字符集的修改

    ### Oracle字符集的查看与客户端字符集的修改 #### 一、Oracle字符集的基本概念 在Oracle数据库系统中,字符集(charset)是用于表示文本数据的编码方式。正确设置和管理字符集对于确保数据的一致性和正确性至关重要...

    oracle 字符集修改命令

    ### Oracle字符集修改命令详解 #### 一、引言 在Oracle数据库的管理与维护过程中,字符集的正确设置对于确保数据的正确显示与处理至关重要。由于不同的地区和语言环境对于字符编码的需求各异,因此有时可能需要...

    Oracle Database 10g Express Edition

    Oracle Database 10g Express Edition,本人用于学习。

    oracle数据库导入导出命令! 更改字符集

    本文将深入探讨Oracle数据库的导入导出命令,特别是如何更改字符集的相关知识。 首先,Oracle数据库提供了两种主要的数据导入导出工具:`expdp`(Export Data Pump)和`impdp`(Import Data Pump)。这两个实用程序...

    修改ORACLE11G字符集

    ### 修改Oracle 11g字符集 在Oracle数据库管理中,字符集的设置至关重要,它直接影响到数据的存储和检索。对于已经安装并运行的Oracle 11g数据库,如果发现默认字符集不符合需求(例如默认为US7ASCII),则需要进行...

    Oracle11g 字符集 AL32UTF8 修改为ZHS16GBK

    在Oracle11g环境下,可能会遇到需要更改数据库字符集的情况,例如从AL32UTF8修改为ZHS16GBK。这种变更通常发生在需要支持特定语言环境的应用场景中,尤其是当应用主要面向中文用户时,采用ZHS16GBK字符集可以更好地...

Global site tag (gtag.js) - Google Analytics