zoukankan      html  css  js  c++  java
  • 解决使用Oracle数据库,项目启动由于表原因无法成功启动问题

        1.仔细看异常信息,如果出现一个  翻译过来是 不仅仅这一张表,那就说明,在连接数据库,定位到表的时候有多张表,不知道连哪一张。

          原因: 有多个用户,这两个用户下有相同的表。 就算是在不同的表空间也不行。  本人猜测在不同的实例下应该是可以存在同样的两张表。

          解决办法;删掉多余的用户及其下的表,或者删除此用户下相同的表就行。

        2.在使用hibernate进行自动建表的时候,需要有权限,一般设置个dba权限比较好。

        

        3.spring boot 集成 hibernate 进行开发的时候,在配置文件中设置jpa 的其中三种值 :   create    update   drop    

            create : 表示启动项目后,加载hibernate时候,会先删除原先库中的表,再进行创建

            update :hibernate在第一次加载的时候创建表,后面再加载的话,表示进行比较,可以修改创建新表,但不删除。

            drop: 每次停止项目,删除所有hibernate已建表。

            Oracle在删除和创建用户的时候需要再dba下进行:

            Linux下;    su  - oracle 

                 sqlplus   /   as   sysdba;  以dba登录

                 创建用户前,先建表空间:    create  tablespace  表空间名  datafile  'dbf文件路径(此路径的目录必须已存在)'  size    100M;

                 创建用户    create  user  用户名  identityfied by  密码  default  tablespace  表空间名;

                                              授权:   grant  dba  to   用户名;给用户授dba角色权限

                   grant  connect ,resource  to  用户名  ;普通权限  这个其实是赋予了一个角色,通过角色间接授权

               删除用户:drop user  用户名  cascade;  此命令删除用户及其下的所有表。

    天行健君子以自强不息地势坤
  • 相关阅读:
    earlycon 的使用【转】
    DDR工作原理【转】
    DDR工作时序与原理【转】
    kernel内存、地址【转】
    Linux时间子系统之定时事件层(Clock Events)【转】
    QEMU 2.10.1 编译安装【转】
    Kernel 内核调试【转】
    The Slab Allocator in the Linux kernel【转】
    Linux内存管理:slub分配器【转】
    linux内存管理笔记(二十七)----slub分配器概述【转】
  • 原文地址:https://www.cnblogs.com/wbqcheng/p/9998298.html
Copyright © 2011-2022 走看看