PL/SQL 基础
PL/SQL 基础PL/SQL的基本结构:PL/SQL是一种块结构语言,其块结构如下:
1234567891011121314DECLARE ――声明部分:声明变量、常量、用户定义的数据类型以及游标 ――这一部分可选,不需要可不写BEGIN ――主程序体,在这可以加入各种合法的语句EXCEPTION ――异常处理程序,当程序中出现错误时执行这一部分 ――这一部分可选END; ――主程序体结束,分号必不可少; 从上面的结构可以看出,PL/SQL块由三部分组成:声明部分、执行部分和异常处理部分,其中只有执行部分是必须的:BEGIN /*执行部分*/ END;
12345DECLARE /*声明部分*/ BEGIN /*执行部分*/ END;
都是合法的。
PL/SQL中的数据类型(1) 标量NUMBER–用于存储和操纵数字数据 ,格式是NUMBER(p,s),p是数据宽度,s是小数点后的位数,默认为0;
CHARACTER――
CHAR :字符型,最长2000b
NCHAR:依 ...
Oracle User
创建用户123456789CREATE USER user IDENTIFIED {BY password | EXTERNALLY} [ DEFAULT TABLESPACE tablespace ] [ TEMPORARY TABLESPACE tablespace ] [ QUOTA {integer [K | M ] | UNLIMITED } ON tablespace [ QUOTA {integer [K | M ] | UNLIMITED } ON tablespace ]...] [ PASSWORD EXPIRE ] [ ACCOUNT { LOCK | UNLOCK }] [ PROFILE { profile | DEFAULT }]
修该密码
alter user scott identified by “tiger”;
删除用户1DROP USER user [CASCADE]
CASCADE 同时删除表
查看配额DBA_USERSDBA_TS_Q ...
Oracle Object
Oracle Object表123create table t_<name>;select * from t_<name>;drop table t_<name>;
常用数据类型varchar2(n) 可变长的字符串
具体定义时指明最大长度n byte,最大字节数都是4000(UTF8 1333个汉字)
number(precision,scale) 可变长的数值列,允许浮点数、正值及负值
precision [1,38] 是所有有效数字的位数(从左边第一个不为0的数算起,小数点和负号不计入有效位数)
scale [-84,127] 是小数点以后的位数,多出来的位数四舍五入
date 时间日期
包括:世纪、年、月、日、时、分、秒
sysdate
TO_CHAR(SYSDATE, 'yyyy-mm-dd hh24:mi:ss')
TO_DATE('2002-10-09 13:23:44', 'yyyy-mm-dd hh24:mi:ss')
blob 二进制数据 用来保存较大的图形文 ...
OpenGauss Database
OpenGauss Database安装1234567891011docker run --name opengauss --privileged=true -d -e GS_PASSWORD=Tq@021009 -p 5432:5432 enmotech/opengauss:latestdocker run --name opengauss --privileged=true -d -e GS_PASSWORD=Tq@021009 -p 5432:5432 opengauss/opengaussgsql -d postgres -U gaussdb -W 'Tq@021009' -h host_ip -p 5432su - ommgsql
12345678910步骤 1 以操作系统用户omm登录数据库主节点。gs_om -t status --detail步骤 2 使用如下命令查询openGauss状态:若要查询某主机上的实例状态,请在命令中增加“-h”项。示例如下:。示例如下:gs_om -t status -h plat2 --detail其中,plat2为 ...
Archlinux Mail
Archlinux Mail安装1sudo pacman -S s-nail
编辑配置文件sudo vim /etc/mail.rc
12345set from="<USERNAME>@qq.com"set smtp-auth=loginset mta=smtps://<USERNAME>:<QQ邮箱授权码>@smtp.qq.com:465 #smtp服务器端口是465set v15-compat #必须要set nss-config-dir=/root/.certs
获得邮箱的SSL证书并存放到本地最后一行的nss-config-dir就是制定的存放QQ邮箱SSL证书的位置
手动的获取QQ邮箱的证书保存到本地指定的目录里以备调用和验证
12345678su rootmkdir -p /root/.certs/echo -n | openssl s_client -connect smtp.qq.com:465 | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERT ...
Oracle Log File
Oracle Log File
重做日志文件(Redo Log Files)重做日志文件记录对数据所做的所有更改,并提供从系统或介质故障中恢复的机制。
重做日志文件按组(group)进行组织。
Oracle 数据库至少需要两个组(group),因为日志组要循环使用。
组中的每个重做日志称为一个成员(member)。
重做日志文件的用途
重做日志文件提供了在发生数据库故障时重做事务的方法。每个事务都同步写入重做日志文件,以便在介质发生故障时提供恢复机制。例外情况包括:使用 NOLOGGING 选项完成的直接加载和直接读取。 这包括尚未提交的事务、撤消段信息以及架构和对象管理语句。重做日志文件用于实例无法恢复尚未写入数据文件的已提交数据等情况。重做日志文件仅用于恢复
重做日志文件的结构
DBA 可以设置 Oracle 数据库来维护联机重做日志文件的副本,以避免由于单点故障而丢失数据库信息。
在线重做日志组(Online Redo Log Groups)联机重做日志文件的一组相同副本称为联机重做日志组。
LGWR 后台进程同时将相同的信息写入组中的所有联机重做日志文件。Oracle 服务 ...
Linux User Group
Linux UserLinux 下用户和组管理
4个文件
/etc/passwd : 保存用户账户信息
/etc/shadow : 用户账户密码
/etc/group : 账户分组信息
/etc/gshadow :组口令、组管理员
获取用户和组相关信息123456789101112# 当前用户的信息id# 当前登陆的用户名users# 当前用户的组groupswho/whoamicat /etc/passwd
用户管理添加用户
useradd
123456789useradd <arg> username -c comment -d home-dir -e expire-date -g user-group-name -G supplementary-group -s shell-path -u uid -D username
adduser
1adduser
修改用户
usermod
123456usermod <arg> username -l new ...
Docker Oracle 11g
12345docker run -d -p 1521:1521\ --name oracle-11g\ -e ORACLE_ALLOW_REMOTE=true\ -e ORACLE_DISABLE_ASYNCH_IO=true\ oracleinanutshell/oracle-xe-11g
关闭实例
shutdown immediate
启动实例到nomount状态startup nomount
建立控制文件alter database backup controlfile to trace;
show parameter user_dump_dest;
123456789101112131415161718192021222324252627282930313233343536373839---- Set #1. NORESETLOGS case---- The following commands will create a new control file and use it-- to open the database.-- Data used by Recov ...
Oracle DBA
Oracle DBAOracle DB 架构
主要组件概述
Oracle 服务器:Oracle 服务器中有多个文件、进程和内存结构;但是,在处理 SQL 语句时,并非所有方法都使用它们。有些用于提高数据库的性能,确保在发生软件或硬件错误时可以恢复数据库,或执行维护数据库所需的其他任务。Oracle 服务器由 Oracle 实例和 Oracle 数据库组成。
Oracle 实例:Oracle 实例是后台进程和内存结构的组合。必须启动实例才能访问数据库中的数据。每次启动实例时,都会分配一个系统全局区域 (SGA) 并启动 Oracle 后台进程。后台进程代表调用进程执行功能。它们整合了原本由为每个用户运行的多个 Oracle 程序处理的功能。后台进程执行输入/输出 (I/O) 并监视其他 Oracle 进程,以提供更高的并行性,从而提高性能和可靠性。
Oracle 数据库:Oracle 数据库由操作系统文件(也称为数据库文件)组成,这些文件为数据库信息提供实际的物理存储。数据库文件用于确保数据保持一致,并且可以在实例发生故障时恢复。
其他密钥文件:非数据库文件用 ...
Linux 常用命令
LINUX 命令LINUX 终端快捷键12345678910111213141516171819202122232425262728293031323334Ctrl + Shift + C 复制Ctrl + Shift + V 粘贴 Ctrl + Shift + + 放大字体Ctrl + Shift + - 缩小字体Ctrl + l 清屏Ctrl + a 移动光标到命令行首Ctrl + e 移动光标到命令行尾 Ctrl + b 同键盘左键,向左移动光标Ctrl + f 同键盘右键,向右移动光标Alt + b 向前移动一个词的距离Alt + f 向后移动一个词的距离 Ctrl + w 剪切光标之前的一个词Alt + d 剪切光标之后的一个词Ctrl + u 从当前光标所在位置向左剪切全部命令Ctrl + k 从当前光标所在位置向右剪切全部命令Ctrl + t 交换光标前的最后两个字符Alt + t 交换当前单词和前一个单词的位置Ctrl + r 查看历史命令,需要输入命令的起始字母,剩下的部分自动补全Ctrl + p 显示上一条命令,同向上箭头Ctrl + n ...