日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

Oracle分布式数据库的垂直分片实例

發布時間:2024/1/1 数据库 51 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Oracle分布式数据库的垂直分片实例 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

目錄

  • 前言
  • 0 軟件版本
  • 1 啟動監聽及數據庫
    • 1.1 啟動數據庫示例
    • 1.2 啟動監聽進程
  • 2 建立表
    • 2.1 在總部(Windows)建立全部員工的基本信息表和總部員工的工資信息表
    • 2.2 在分部(CentOS)建立該分部的員工工資信息表
  • 3 建立垂直分區視圖


前言

在之前的“Oracle分布式分片技術實現兩主機上的Oracle19c數據庫(CentOS7與windows10)之間建立鏈接,對數據庫進行水平分片”的基礎上,實現兩主機Oracle分布式數據庫垂直分片。

需求:
將所有職工的基本信息存放在總公司(win10的Oracle數據庫中),工資信息存放在各自公司(win10的Oracle數據庫中和CentOS7的Oracle數據庫中)。
思路:
對職工信息先進行垂直分片(分為基本信息和工資信息),再對工資信息進行水平分片。


0 軟件版本

OS:一臺Windows10的電腦和在其上搭建一臺CentOS7的虛擬機
數據庫:Oracle19c
圖形化工具:Navicat for Oracle
(建議直接從官網下載,也可以從我之前的博客中獲取,里面講述如何安裝和使用這些軟件)


1 啟動監聽及數據庫

在進行垂直分片前,需打開CentOS7中的Oracle數據庫及監聽服務

1.1 啟動數據庫示例

sqlplus / as sysdba SQL> startup

1.2 啟動監聽進程

lsnrctl start

2 建立表

(保證相同屬性的各字段名稱及類型相同)

2.1 在總部(Windows)建立全部員工的基本信息表和總部員工的工資信息表

(1)全部員工基本信息表:(EMP_Basic_ALL)

Create Table EMP_Basic_ALL( ENO NUMBER(4) Primary Key, ENAME VARCHAR2(10), DEPTNO VARCHAR2(10) ); INSERT INTO EMP_BASIC_ALL VALUES(1,'張山','Windows'); INSERT INTO EMP_BASIC_ALL VALUES(2,'王風','Windows'); INSERT INTO EMP_BASIC_ALL VALUES(3,'李雪','Windows'); INSERT INTO EMP_BASIC_ALL VALUES(4,'丁雨','CentOS'); INSERT INTO EMP_BASIC_ALL VALUES(5,'華電','CentOS'); INSERT INTO EMP_BASIC_ALL VALUES(6,'劉月','CentOS');


(2)總部員工工資信息表:(EMP_Salary_Windows)

Create Table EMP_Salary_Windows( ENO NUMBER(4) Primary Key, SALARY NUMBER(10,2)); INSERT INTO EMP_Salary_Windows VALUES(1,12800.45); INSERT INTO EMP_Salary_Windows VALUES(2,15530.32); INSERT INTO EMP_Salary_Windows VALUES(3,11905.68);

2.2 在分部(CentOS)建立該分部的員工工資信息表

分部的員工工資信息表:(EMP_Salary_CentOS)

Create Table EMP_Salary_CentOS( ENO NUMBER(4) Primary Key, SALARY NUMBER(10,2)); INSERT INTO EMP_Salary_CentOS VALUES(4,16708.25); INSERT INTO EMP_Salary_CentOS VALUES(5,12690.96); INSERT INTO EMP_Salary_CentOS VALUES(6,13788.32);


3 建立垂直分區視圖

在總部(Windows)建立分區視圖,實現在總部對兩地所有員工的所有信息透明訪問:

Create View EMP As Select EMP_Basic_ALL.ENO, ENAME,DEPTNO,SALARY From EMP_Basic_ALL,EMP_Salary_Windows Where EMP_Basic_ALL.ENO=EMP_Salary_Windows.ENO Union Select EMP_Basic_ALL.ENO, ENAME,DEPTNO,SALARY From EMP_Basic_ALL,EMP_Salary_CentOS@link1 Where EMP_Basic_ALL.ENO=EMP_Salary_CentOS.ENO@link1;

注:其中的@link1是win10-Oracle到CentOS7-Oracle的數據庫鏈。

查詢視圖:

可以看出實現了win10的Oracle用戶對CentOS的Oracle的透明訪問,查詢到其的工資信息!
注意:視圖不支持增刪改等DDL操作。


總結:在之前的“Oracle分布式分片技術實現兩主機上的Oracle19c數據庫(CentOS7與windows10)之間建立鏈接,對數據庫進行水平分片”的基礎上,實現了兩主機Oracle分布式數據庫垂直分片的實例操作。

后續會繼續更新有關Oracle分布式數據庫的內容!
(注:第14次發文,如有錯誤和疑問,歡迎在評論區指出,感謝捏!)
——2021.10.17

總結

以上是生活随笔為你收集整理的Oracle分布式数据库的垂直分片实例的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。