【HICPガウス】データベース管理データベース(データベース並行処理ロック安全性)-10

DML同時
DML表に共有ロック
、データの行を変更する前に、行ロックブロック、他のトランザクションは、この行を変更は、
行がロックしているトランザクションのコミットされていない行が前に変更されるべき他の事項にのみトランザクションを待つことができるがコミット
DMLの端を解放しない時に、テーブルと行ロックを置くために提出されたときに、テーブルと行ロック

MVCC
マルチバージョン同時実行制御の制御性の高い同時データアクセスを提供
同時実行制御を同時にアクセスするために多くの人々を可能にし、データを修正するデータベースが提供する機能の集合である
複数のバージョンが同時にデータのGaussDB複数のバージョンがデフォルトをブロックしない互いにように読み取りと書き込み値をマテリア文レベルの一貫性の複数のバージョンの場合

管理ロールバック・セグメント
ロールバック保存された元のデータ内のデータを変更するには、最初のトランザクションの前に
ロールバック機能:

    1、ユーザーのロールバックトランザクションまたはトランザクションを前に、トランザクションの実行にデータを復元するために失敗した
    2、元のデータを保存するために現場で同じ書き込みトランザクションの同時読み取りおよび書き込みを読み書きするトランザクションのロールバック・セグメントを読み取ることができ、ロールバック、彼を読んで視界のバージョンのデータの一貫性を保証するために
    3を、フラッシュバッククエリユーザーは、過去のある時点でのデータを照会することができ
    、4 データベースの復旧をデータ復旧は、REDOログの最初の使用後にデータベース・インスタンスの再起動を回復してから再起動する前にロールバックコミットされていないトランザクションを使用した後ロールバック
    5、ロールバックが多重化データロールバックメッセージの持続時間は、ロールバックが多重化されてもよい満了する
    6を、有効なコンフィギュレーションロールバック

マルチバージョン管理
データの読み書き改善するために、データの一貫性を維持するために、
     歴史と現在のバージョン別のストレージ
     だけで最高に保ち、データ・ページの新しいバージョン履歴バージョンのロールバック・セグメントに保存された
     トランザクションテーブルとロールバックのリサイクル
     のみITL IDを残しタプルヘッドを現在のページITLの格納の動作によって取引情報
     視認決意システムSCN SCN比較値が現在の可視性を得ることによって決定される
     空間多重自動リカバリロールバック

行レベルがMVCC
データの行がロールバックアドレスが記録されている
データの同一ライン情報アンドゥチェーンを構成する
データのロールバック行の可視バージョン履歴必要のバージョンを取得するために
データ・スペース大規模

MVCCレベルページ
それぞれのトランザクションレコードのロールバック・セグメント・アドレス値
UNDO同じトランザクション情報は、鎖から構成されている
データは、フットプリントの小さな
構成チューニングパラメータCRプール

スナップショットが古すぎる
    多重ロールバック
    不十分なUNDO領域
    の長い問い合わせ
    多重総務の
    業務にリサイクルする取引スロットの制限数
    総務遅延は、クリーンアップがないクリーンなページITL情報訪問ページが再び総務は、タイムリーな時間を提出につながることができない多重トランザクションを得ることができなかったん発生しましたバージョン可視かどうかを決定する
解決戦略は
     アンドゥテーブルスペースを増加させるために
     アンドゥ予約領域を増加させるために
     トランザクションの数を増加させます

 

 

 

 

 

 

 

ロック管理
テーブルロック管理
    テーブルロック制御DMLおよびDDL同時テーブルレベルで発生
        DML操作がテーブル・レベルを追加する同時DDL操作を防止するためにロックを共有ロック解除照会を
        DDLは、テーブルレベル排他ロックを追加する他のDDLブロック
テーブルロックモード
共有共有ロック最も低いレベルのテーブルロックは、同時行動DMLはなく、同時にDDL許可
Exclusiive排他ロックはロックが書き込みXへのアクセスに最も高いレベルの制限後のテーブルの上に任意のDDLとDMLの他の業務を許可していません
IX意図排他ロックテーブルの上がされていますDDLは、最初の意図的ロックを追加し、その後の共有ロックを防ぐことができます排他ロックを追加したい共有ロックの場合は、追加されているロックされていないDDLは、プロセスを待つために属するロックを取得することができなかっ防止するために添加されます

行ロック管理
行ロックは、DMLオペレーションによって引き起こされる
種の排他ロック一種のみが共有ロックしていない行ロック
、他のトランザクションは、この行を参照する行を変更する場合は、トランザクションにロックするページ上の行ロックに関連付けられた回線がAにリンクされています総務は、それがトランザクションのコミットまで待つか、タイムアウトに変更を待機しなければならない
設定パラメータによって設定することができ、行ロック待機時間LOCK_TIMEOUT

デッドロック・チェック・
セッション1待機中のセッション2セッション2を待っているセッション1
A表B、表Bプラス排他ロック待機セッション2、待機中のセッション1に排他ロックとAテーブルにセッション2への排他ロックのセッション1に排他ロックセッション2にテーブルロックロックセッション1の
トランザクションのデッドロック行ロックロック- >サービス改正1 ROWAない賃金、rowBコミットされていないトランザクション2を変更し、1つのトランザクションがrowBを変更するビジネス情勢に入った、提出ROWAは1つの提出する業務執行にトランザクションの2待機待ちを行って修正するのを待つ2を待つ
ITLデッドロック  の変更ページを
監視: GaussDbは自動的にデッドロックを検出し、文レベルでデッドロックをロールバック

デッドロックデッドロックは、実行ログを出力します

1つのセッションでデッドロックを監視し、デッドロックのデッドロックエラー待ちを破るために提案しました

 

 

 

 

 

 

データベースセキュリティ管理
ネットワークセキュリティシステムのセキュリティデータのセキュリティは、3つのレベルに分けることができます[広く]
ネットワーク:ネットワークレベルのセキュリティ技術的にはシステムの技術的な側面からの暗号化技術で、ファイアウォール技術侵入検知から構成
システムコアサーバのセキュリティを保護するために: 、主にサーバーのアカウントのパスワードおよびその他のアクセスで
データ管理:データベース監査データアクセスが暗号化されたデータのバックアップ安全監査

セキュリティ:クライアント情報とインタラクティブな情報偽造、改ざんの開示を防止するためのアクセス制御およびSSL
ユーザーの権限昇格のリスクを介してデータベースサーバへの権利を防ぐために補強
の安全性は、データベース上のすべての操作がうまくによって文書化されている監査します

LSNR_ADDR 地址 LSNR_PORT 端口
SESSIONS 默认值200 由预留的系统用户session merge用户session 普通用户session组成
系统用户包括:固定的32个session 用于内部使用会话 资源回收 checkpoint等 固定预留的16个session 用于sql并行框架会话
emerg用户包括: Super_user_reserved_session 参数控制
普通用户包括: session-32-16 至少配置一个 ,否则数据库无法启动
session取值建议配置 optimized_worker_threads*1.2
super_user_reserved_sessions: 预留给sys session个数 默认值5
optimized_worker_threads 最优工作线程个数 默认100

客户端连接方法
按口令分类 口令认证登录 、本地免密登录
按登录协议分类:tcp 或 UDS(本地登录 一般作为业务管理通道)
TCP连接
管理员登录[仅只有管理员可以免密登录] zsql / as SYSDBA [ip:port] -d /home/omm/data1 如果启了多个数据库实例,需要使用-d 指定数据库目录
普通用户登录 zsql user/userpassword@ip:port [-d /home/omm/data1] -q -w connect_timeout -s silent_log
当数据库管理员 管理多个实例的时候 连接制定的实例需要指定-d 数据目录 、-q 取消ssl登录认证 、-s 用于设置无提示模式执行sql 、-w 参数用于配置客户端连续数据库时间超时

 

UDS 连接方法
主要是保障数据库在异常情况下 客户端可以登录到服务器端
UDS 只能支持本地登录 本质上UDS 是通过文件方式 模拟tcp通信
UDS 不仅提供紧急会话登录 也适用于普通会话
如果要切换用户会话到UDS路径 需要服务端和客户端分别配置监听UDS socket文件 此时用户登录的会话不再占用紧急预留会话

DV_SESSION 查看会话信息
select * from dv_session where module!="UNKOWN";
zsql user/user_password@uds -d /home/omm/data1 -q -s silent_file -w connect_timeout

连接安全认证
支持配置用户白名单 IP白名单 ip黑名单 有效控制访问连接
用户白名单 : 添加zhba.conf有效条目 以限制指定用户只能从限定的IP访问数据库
IP白名单 : 配置TCP_INVITED_NODES参数 限制只能从指定IP地址访问数据库
IP黑名单 :配置TCP_EXCLUDED_NODES 参数 限制不能从指定IP 访问数据库
IP黑名单 权限最高

配置客户端接入认证
假设服务器地址192.168.1.1 监听端口为1888
配置用户白名单
zhba.conf ----> host user 127.0.0.1,192.168.3.222, 20AB:9217:afcf:feab:fcd0/64
type 当前支持 host hostssl ,host表示普通TCP连接 ,hostssl 表示ssl连接
ipv4 :192.168.3.222
IPV6 : 20AB:9217:afcf:feab:fcd0/64

select value from v$parameter where name = 'tcp_invited_nodes'; #查询白名单
select value from v$parameter where name = "tcp_excluded_nodes" #查询黑名单

 

在线配置白名单 黑名单
alter system set tcp_invited_noes = "(127.0.0.1, 192.168.0.1, 192.168.2.*)"
alter system set tcp_excluded_nodes = "(192.168.10.*, 192.168.0.255)"
启动监测开关 直接生效
alter system set tcp_valid_node_checking =true ;

ssl证书
双向认证 单向认证

 

 

 

 

 

 

おすすめ

転載: www.cnblogs.com/oscarli/p/12092049.html