linux系统安装Oracle

2023-12-22 20:33:54

linux 安装oracle

官网下载地址:https://www.oracle.com/cn/database/technologies/oracle-database-software-downloads.html#19c

官网安装文档:https://docs.oracle.com/en/database/oracle/oracle-database/index.html

预加载下载地址:http://yum.oracle.com/repo/OracleLinux/OL7/latest/x86_64/getPackage/oracle-database-preinstall-19c-1.0-1.el7.x86_64.rpm

两个文件上传至linux中/root目录下

# oracle预安装 应该是为了安装编译器
yum -y localinstall oracle-database-preinstall-19c-1.0-1.el7.x86_64.rpm

# oracle安装命令
yum -y localinstall oracle-database-ee-19c-1.0-1.x86_64.rpm

# 初始化oracle数据库 
/etc/init.d/oracledb_ORCLCDB-19c configure

# 查看端口是否被占用
netstat -anop | grep 1521

# 查看oracle是否安装成功
ps -ef|grep oracle

# 配置oracle环境变量可以直接再root /etc/profile文件配置
export ORACLE_HOME=/opt/oracle/product/19c/dbhome_1
export ORACLE_SID=ORCLCDB
export PATH=$ORACLE_HOME/bin:$PATH
stty erase ^H # 作用是支持删除按钮

# 查询oracle数据库服务名称,使用远程工具是需要用到
select global_name from global_name;

SELECT NAME FROM V$DATABASE;# 获取连接的服务名


# oracle创建用户需要加上c##
create user C##sysbase identified by sysbase1024;

# 授权
grant connect,resource to c##sysbase
# 授权查询权限
grant select any table to

#创建表之后插入数据报错
alter user C##SYSBASE quota unlimited on users;

# 查询sql表名不用双引号括起来,就不区分大小写
SELECT * FROM user_file
SELECT * FROM USER_FILE


# 设置sql窗口查询展示数据格式
set pagesize 999  

停止oracle服务

su oracle
sqlplus / as sysdba

shutdown

quit

# 关闭监听服务
lsnrctl stop

启动oracle服务

su oracle
# 打开监听服务
lsnrctl start

sqlplus / as sysdba

startup

找回oracle用户密码

su oracle # 切换oracle用户

sqlplus /nolog #启动sqlplus会话

conn /as sysdba # 超级管理员 (SYSDBA) 身份登录到 Oracle 数据库

alter user system identified by oycm_system;# 修改用户system密码为oycm_system
alter user C##SYSBASE identified by oycm_system

lsnrctl start
sqlplus /nolog
conn / as sysdba
startup nomount;
alter database mount;
alter database open;

$ORACLE_HOME/bin/dbca

oracle的DDL

创建表


编辑表

alter table <table_name> add <table_column> <date_type>; # 给表添加新的一列

删除表

drop table <table_name>; # 删除表table_name

drop table <table_name> cascade constraints; # 不管外键约束删除表

如果RECYCLEBIN初始化设置的是ON,删除的表会放在回收站表(recyclebin)里面,使用flashback命令可以回滚删除的表

select * from recyclebin; # 查询回收站

flashback table <table_name> to before drop # 恢复被意外删除的表

oracle数据字典

select * from user_tables;
表名称表信息列数
USER_TABLES当前用户(登录用户)拥有的所有表的信息83
ALL_TABLES当前用户以及用户有访问权限的其他所有表的信息84
DBA_TABLES数据库中所有表的信息,需要具有DBA权限才能查询该表84
表名称表的列信息列数
USER_TAB_COLUMNS前用户拥有的所有表的列信息36
ALL_TAB_COLUMNS用户有访问权限的其他所有表的列信息37
DBA_TAB_COLUMNS数据库中所有表的列信息,需要具有DBA权限才能查询38
SELECT * FROM USER_TAB_COLUMNS WHERE table_name = 'EMPLOYEES_DEMO';

SELECT COLUMN_NAME
FROM USER_CONS_COLUMNS
WHERE CONSTRAINT_NAME = (
    SELECT CONSTRAINT_NAME
    FROM USER_CONSTRAINTS
    WHERE TABLE_NAME = 'USER_FILE'
        AND CONSTRAINT_TYPE = 'P'
);

文章来源:https://blog.csdn.net/weixin_47748878/article/details/135160178
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。