zoukankan      html  css  js  c++  java
  • Oracle

    Oracle下载

    官网下载地址
    https://www.oracle.com/database/technologies/oracle-database-software-downloads.html
    下载完成以后两个多G,解压后6个G。

    安装

    双击setup.exe

    配置选项

    因为是win10系统,系统类选择桌面类

    使用虚拟账户

    设置安装位置及口令

    显示要安装的程序

    等待安装完成即可

    安装完成

    安装完成后可以在开始菜单中查看

    Oracle Instance Manager实例管理

    Oracle数据库是数据的物理存储, 包括:数据文件ORA或者DBF、控制文件、联机日志、参数文件 。 一个操作系统只有一个Oracle数据库,可以看作是Oracle就只有一个大数据库。

    一个Oracle实例(Oracle Instance)由一系列的后台进程(Backguound Processes)和内存结构(Memory Structures)组成。一个数据库可以有n个实例。

    实例管理,在安装时会自动新建一个叫ORCL的实例,也可以新建多个实例。

    客户端

    客户端工具:sqlplus(官方推荐命令行)、sqldeveloper(免费)、pl/sql、navicat for oracle
    sqlplus命令

    默认用户名密码

    用户是在实例下建立的,不同实例可以建相同名字的用户,建立用户时会建立一个和用户名相同的schema(模式)。

    登录身份:normal、sysdba、 sysoper

    normal 是普通用户

    sysdba拥有最高的系统权限,登陆后是sys

    sysoper主要用来启动、关闭数据库,sysoper登陆后用户是public

    默认用户名密码

    用户名 密码 登录身份
    sys change_on_install SYSDBA或SYSOPER
    system manager SYSDBA或NORMAL

    sqlplus

    #免密登录
    sqlplus /nolog   #免密登录
    conn /as sysdba  #作为管理员连接
    
    sqlplus / as sysdba  #直接登录为管理员
    
    #用户名密码登录
    sqlplus sys/ as sysdba  #用户名,然后输入密码
    sqlplus sys/123456 as sysdba   #用户名密码登录,密码会显示出来
    

    创建新用户

    #创建或修改scott账户密码,12c往后普通用户需要带前缀C##或c##
    create/alter user scott identified by tiger;  
    
    #赋予用户创建会话权限
    grant create session to USERNAME;
    #赋予建表权限,但只能给当前登录用户的模式建表
    grant resource to USERNAME;
    #修改表USERNAME用户名的表空间为无限制
    ALTER USER USERNAME QUOTA UNLIMITED ON "USERS";
    

    给其他用户赋予权限

    #赋予某个用户其他模式下的增删改查权限
    GRANT SELECT,INSERT,UPDATE,DELETE on schema.table to USERNAME;
    
    #赋予建表权限,能给任何schema创建
    grant create any table to USERNAME;
    #赋予创建存储过程权限,能给任何schema创建
    grant create any procedure to USERNAME; 
    
    #生成语句-授予其他用户当前模式的所有表读取权限
    select 'grant select on '|| tname ||' to  USERNAME;' from tab 
    where tname not like 'BIN%';
    
    #撤销指定schema下面指定table的权限
    Revoke select on SCHEMA.tableName from USERNAME;
    #删除用户式所有表的权限
    Revoke select any table from USERNAME;
    

    Navicat需要下载instantclient更换oci.dll文件。

    表空间

    表空间是一个用来管理数据存储逻辑概念,表空间只是和数据文件(ORA或者DBF文件)发生关系,数据文件是物理的,一个表空间可以包含多个数据文件,而一个数据文件只能隶属一个表空间。

    OJDBC

    ojdbc下载

    把ojdbc8.jar放入程序中,此包需要jdk1.8版本,JDBC代码如下。

    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.ResultSet;
    import java.sql.Statement;
    
    public class DbUtil {
        public static final String DRIVERCLASS = "oracle.jdbc.driver.OracleDriver";  //加载驱动类
        //端口为1521,实例名为ORCL(在OracleInstance Manager中可查看)
        public static final String URL = "jdbc:oracle:thin:@localhost:1521:ORCL";  
        public static final String USER = "c##autumn";  //用户名
        public static final String PASSWORD = "123456";  //密码
    
        public static void main(String[] args) throws Exception {
            //1.加载驱动程序
            Class.forName(DRIVERCLASS);
            //2. 获得数据库连接
            Connection conn = DriverManager.getConnection(URL, USER, PASSWORD);
            //3.操作数据库,实现增删改查
            Statement stmt = conn.createStatement();
            
            //4.执行sql语句
            ResultSet rs = stmt.executeQuery("SELECT stuname, age FROM stu");
            //5.如果有数据,rs.next()返回true
            while(rs.next()){
                System.out.println(rs.getString("stuname")+" 年龄:"+rs.getInt("age"));
            }
        }
    }
    

  • 相关阅读:
    表空间的改变
    特殊字符转换
    oracle下创建临时表
    约束
    删除数据库记录的同时删除磁盘文件
    数据文件
    级联删除case
    oracle net连接方式

    在Oracle服务器端配置监听器
  • 原文地址:https://www.cnblogs.com/aeolian/p/14167971.html
Copyright © 2011-2022 走看看