神通数据库安装

unzip ShenTong7.0.8_342.192_arm64.zip

mkdir ShenTong

cd ShenTong7.0.8_342.192_arm64

chmod 755 setup

./setup  -console

source /etc/profile

service oscaragentd stop

service oscardb_OSRDBd stop
service oscaragentd start

service oscardb_OSRDBd start

ps -ef|grep os

root        6429       1  0 15:08 pts/2    00:00:00 /data/ShenTong/bin/oscaragent -e /data/ShenTong -c
root        6455       1 36 15:08 pts/2    00:00:02 /data/ShenTong/bin/oscar -o normal -d "OSRDB"
 

isql

Welcome to isql 2.0.56 interactive terminal, Client Default Encoding is UTF8. 
Login time:2024-01-22 15:09:28

Password for default user: 

szoscar55
Connect to:
神通数据库7.0.8.191204 for Linux(arm 64bit) (65535 connections) (license invalid after 90 days)
Using New Protocol. Database Encoding is UTF8.

Type: 'copyright' for distribution terms
      'help' or '\h' for help with SQL commands
      ';' for end with commands
      '!' to run system commands
      '@' to run sql script
      'exit' for quit

SQL=> 

查看归档
select * from V_SYS_ARCHIVELOG_INFO;

查看数据文件

select * from v_sys_datafile_info;

查看集群信息
select * from v_sys_ha_slave_info;

查询用户

select username from dba_users;

修改用户密码

alter user icasc with password 'password';

创建用户

create user icasc with password 'password';

赋权

grant role rolename to user username;

开启归档
ALTER DATABASE ARCHIVELOG 'arch/OSRDB';

清理归档

CREATE OR REPLACE PROCEDURE PUBLIC.SP_DELETE_N_ARCHIVELOG("L_N" IN INT) AS 
begin_time varchar(20);
end_time varchar(20);
v_sql varchar(8000);
begin
begin_time := '2019-01-01';
end_time := SYSDATE - l_n;
v_sql := 'alter database OSRDB DELETE ARCHIVELOG BETWEEN TIME '||''''||begin_time||''''||' AND '||''''||end_time||'''';
raise notice '%',v_sql;
EXECUTE IMMEDIATE v_sql;
commit;
end;
LANGUAGE 'PLOSCAR';

exec sp_delete_n_archivelog(30);
 

查看版本
select versiondetail;
优化

修改OSRDB.conf

BUF_DATA_BUFFER_PAGES
此参数有数据库系统缓存区,用于装载热点数据、存储脏数据。数据库启动时会立即占用,单位为 K
1024000 代表 8G 空间。因为需要申请内存空间,所有设置缓存越大,数据库开启时间越长。建议设置为内存60-70%
SORT_MEM
排序内存,对于 SQL 语句中 order by group by join 等操作时会有影响。如果数据量较大,且需要做排
序或分组操作,将 sort_mem 调大能提高性能

物理备份命令:
brcmd -O backup -d 实例名称 -u 用户名称 -p 密码 -P 端口 -t full -k file -f 备份文件.osrbk -b 8192 -c TRUE(是否压错,true为压缩)

增量备份

brcmd -O backup -d 实例名称 -u 用户名称 -p 密码 -P 端口 -t incr-k file -f 备份文件.osrbk -b 8192 -c TRUE(是否压错,true为压缩)

用例
brcmd -O backup -d OSRDB -u SYSDBA -p szoscar55 -P 2003 -t full -k file -f /opt/OSRDB2021-06-28.osrbk -c true

物理恢复命令:
brcmd -O restore -d 实例名称 -u 用户名称 -p 密码 -P 端口 -t backup_point_last -k file -f 备份文件.osrbk -b 8192 

用例
brcmd -O restore -d OSRDB -u SYSDBA -p szoscar55 -P 2003 -t backup_point_last -k file -f /opt/OSRDB2021-06-28.osrbk -b 8192

锁表查询

SELECT 
 LTRIM(PATH,'<--') AS "阻塞链", SESSION_ID AS "我的会话ID", BLOCKER_SESSION_ID AS "我等待的会话ID", 
 WAIT_EVENT AS "等待资源", NUM_WAITERS AS "多少会话在等待我", 
 LEFT("CURRENT SQL", 819200) AS "正执行的SQL", LEFT("LAST SQL", 819200) AS "上一条执行完的SQL", 
 P1_TEXT, P1, P2_TEXT, P2, P3_TEXT, P3, P4_TEXT, P4, 
 USER_IP AS "前端IP" , APPNAME AS "前端名", "CURRENT USER" AS "用户名",  "SQL COUNT" AS "已执行SQL总数" 
FROM  
( SELECT * 
 FROM (SELECT LEVEL, SYS_CONNECT_BY_PATH (SESSION_ID, '<--') AS PATH, * FROM V$WAIT_CHAINS 
  START WITH BLOCKER_SESSION_ID IS NULL 
  CONNECT BY PRIOR SESSION_ID = BLOCKER_SESSION_ID) 
 ORDER BY LEVEL, PATH) AS VWC LEFT JOIN V_SYS_SESSIONS VSS 
ON VWC.SESSION_ID=VSS."SESSION ID"; 

手动建库

1)oscar打开单用户模式
   2)输入命令CREATE DATABASE OSCAR ENCODING 'GBK' ARCHIVELOG '/opt/ShenTong/arch/' 
   3)初始化oscar -o restrict -d OSCAR
   4)注册服务oscar -o install -d OSCAR
   5)使环境变量生效source /etc/profile

在数据目录下面cp一份配置文件

cp OSRDB.conf OSCAR.conf

VI OSCAR.conf

PORT=2004

/etc/init.d/oscardb_OSCARd start

ALTER DATABASE DATAFILE '/data/ShenTong/odbs/OSRDB/dd.dbf' AUTOEXTEND OFF ;
ALTER TABLESPACE "dd" ADD DATAFILE '/data1/ShenTong/odbs/OSRDB/dd.dbf'  SIZE 20M AUTOEXTEND ON NEXT 10M MAXSIZE UNLIMITED ;

逻辑备份命令例子:(以模式名为TEST为例)
osrexp -usysdba/szoscar55 -h127.0.0.1 -p2003 -dosrdb level=schema file=/opt/TEST.osr log=/opt/bk.log schema=TEST

逻辑恢复命令例子:(以模式名为TEST为例)
osrimp -usysdba/szoscar55 -h127.0.0.1 -p2003 -dosrdb level=schema file=/opt/TEST.osr log=/opt/rt.log schema=TEST ignore=true checkvalidate=false

集群配置

alter database set  node list node 1 '192.168.7.1' ,node 2 '192.168.7.2';

修改每个节点配置文件

HOTSTANDBY_DATABASE_TYPE=2

ENABLE_HA_SINGLE_ALIVE=false

HA_LOCAL_NET_DEV_NAME='ens33:1'         ### 这个网卡设备名就是服务IP对应的设备,具体解释见下方注解

HA_SERVER_IP_ADDRESS='IP'    ### vip,这个是对外提供服务的浮动IP

HA_GATEWAY='gate## 实际网关IP地址

HA_SUB_MASK='255.255.255.0'       ### 子网掩码

HA_SLAVE_QUERY_WAIT_TIMEOUT=5000  

HA_ELECTION_TIMEOUT_MS=10000 

重启数据库

--1. 查看系统内存总体分布统计信息,我们需要根据总体分布缩小分析问题的范围。
select V$MEMORY.MEMORY_NAME,MEMORY_SIZE/1024 as "MEMORY_SIZE(k)",MEMORY_COUNT,ALLOC_COUNT,FREE_COUNT,MEMORY_DESC from V$MEMORY,V$MEMORY_DESC where V$MEMORY.MEMORY_NAME=V$MEMORY_DESC.MEMORY_NAME order by MEMORY_SIZE desc;
--2. 查看全局heap内存占用情况,按照堆名汇总 V$MEMORY_GLOBAL_HEAP ,将同名的堆的大小统计到一起
select HEAP_NAME,TOTAL_SIZE/1024 as "TOTAL_SIZE(k)",FREE_SIZE/1024 as "FREE_SIZE(k)",INIT_SIZE/1024 as "INIT_SIZE(k)",BLOCK_ALLOC_SIZE/1024 as "BLOCK_ALLOC_SIZE(k)",BIG_BLOCK_ALLOC_SIZE/1024 as "BIG_BLOCK_ALLOC_SIZE(k)",HEAP_COUNT from V$MEMORY_GLOBAL_HEAP_SUMMARY order by TOTAL_SIZE desc ;
--3. 查看私有heap内存统计情况,按照堆名汇总 V$MEMORY_PRIVATE_HEAP ,将同名的堆的大小统计到一起
select HEAP_NAME,TOTAL_SIZE/1024 as "TOTAL_SIZE(k)",FREE_SIZE/1024 as "FREE_SIZE(k)",INIT_SIZE/1024 as "INIT_SIZE(k)", BLOCK_ALLOC_SIZE/1024 as "BLOCK_ALLOC_SIZE(k)",BIG_BLOCK_ALLOC_SIZE/1024 as "BIG_BLOCK_ALLOC_SIZE(k)",HEAP_COUNT,SESSION_COUNT,MAX_SESSION_SIZE/1024 as "MAX_SESSION_SIZE(k)",MAX_SESSION_ID,MAX_SESSION_BACKEND from V$MEMORY_PRIVATE_HEAP_SUMMARY order by TOTAL_SIZE desc;
--4. 查看私有chunk内存统计情况,按照内存分配的名字汇总 v$memory_private_chunk , 将同名的统计值统计到一起。并统计出占用内存最大chunk的session_id 以及该session 是否是后台进程
select STAT_NAME,MEMORY_SIZE/1024 as "MEMORY_SIZE(k)",SESSION_COUNT, MAX_SESSION_SIZE/1024 as "MAX_SESSION_SIZE(k)",MAX_SESSION_ID,MAX_SESSION_BACKEND from V$MEMORY_PRIVATE_CHUNK_SUMMARY order by MEMORY_SIZE desc;
--5. 查看全局chunk内存占用情况
select STAT_NAME,MEMORY_SIZE/1024 as "MEMORY_SIZE(k)" from V$MEMORY_GLOBAL_CHUNK order by MEMORY_SIZE desc;
--6. 查看全局heap内存占用情况
select * from V$MEMORY_GLOBAL_HEAP order by TOTAL_SIZE desc;
--7. 查看私有CHUNK内存占用情况
select * from V$MEMORY_PRIVATE_CHUNK  order by MEMORY_SIZE  desc;
--8. 查看私有heap内存占用情况
select * from V$MEMORY_PRIVATE_HEAP order by TOTAL_SIZE desc;
--9. 查看系统全局内存各个区内存的分布情况统计
select * from V$GLOBAL_MEMORY_STAT order by MEMORY_SIZE desc;
--10. 查看当前线程私有内存分布情况统计
select * from V$PRIVATE_MEMORY_STAT order by MEMORY_SIZE desc;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值