OracleDB修改db_name与实例名sid

一、新建用户

  1. 切换到oracle系统用户
    su oracle
    
  2. 用sysdba用户进入Oracle db
    sqlplus / as sysdba;
    
  3. 新建用户
    CREATE USER `username` IDENTIFIED BY 1111;
    
    密码最好不要带@等特殊字符,否则会有很多问题

二、关闭数据库

  1. 进入数据库
    sqlplus / as sysdba;
    shutdown immediate;
    exit;
    

三、修改实例名,修改.bash_profile 中的ORACLE_SID

  1. 在oracle用户下,切换到home目录:cd ~
  2. vim .bash_profile
  3. export ORACLE_SID=这一行修改成export ORACLE_SID=username
  4. source .bash_profile

四、修改/etc/oratab文件,将sid名为username

  1. vim /etc/oratab

    username:/opt/oracle/product/18c/dbhome_1:Y
    

五、进入到$ORACLE_HOME/dbs目录, 将所有文件名中包含原来的sid的修改为对应的新sid的

  1. cd $ORACLE_HOME/dbs, 此处vmi为用户名
    cd $ORACLE_HOME/dbs
    mv hc_ORCLCDB.dat hc_vmi.dat
    mv lkORCLCDB lkvmi
    mv orapwORCLCDB orapwvmi
    mv spfileORCLCDB.ora spfilevmi.ora
    

六、启动数据库到mount模式

  1. 进入数据库
    sqlplus / as sysdba;
    
  2. SQL> shutdown immediate;
  3. SQL> startup mount
  4. SQL> exit

七、使用NID工具将DB_NAME修改为username

nid target=sys/1111 dbname=vmi

八、重建口令文件

orapwd file=$ORACLE_HOME/dbs/orapw$ORACLE_SID password=1111 entries=5 force=y

九、重启数据库

sqlplus / as sysdba
SQL> startup

十、问题处理

  1. 出现未监听的错误,则启动相关服务
    lsnrctl status
    lsnrctl start
    
  2. 打开相关端口
    firewall-cmd --permanent --add-port=1521/tcp
    firewall-cmd --reload
    
  3. sqlplus命令找不到
    指定环境变量
    export ORACLE_HOME=/opt/oracle/product/18c/dbhome_1
    
  4. 修改相关的操作都在oracle这个系统用户下进行,通过su oracle
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值