狠狠干影院/欧美午夜电影在线观看/高黄文/国产精品一区二区在线观看完整版

關于有一職工基本情況的數據庫文件(精選范文2篇)

| 瀏覽次數:

基本是漢語詞匯,拼音是jī běn,是指根本的,一個基本的事實。出自 《漢書·谷永傳》, 以下是為大家整理的關于有一職工基本情況的數據庫文件2篇 , 供大家參考選擇。

有一職工基本情況的數據庫文件2篇

【篇一】有一職工基本情況的數據庫文件

Oracle數據庫中的數據文件有一個特性,即可以設置是否脫機。如果將數據文件設置為脫機,數據庫就無法讀取這個數據文件。只有在文件聯機,時數據庫才能夠讀取其中的內容。為此有時候改變這個數據文件的狀態也是數據庫維護過程中的一個必要手段。

一、為什么要更改其可用性?

1、 處于更改數據文件名或者位置的需要。

在數據庫部署的時候,如果沒有給數據文件取一個合適的名字,或者說沒有給其選擇一個合適的分區。此時在后續的維護中可能就需要更改數據文件的名字或者位置。如有時候處于性能優化的考慮,會將一些存在并發性訪問的數據文件存放在不同的硬盤分區上,以減少I/O沖突提高數據庫性能。在這種情況下,就必須要移動數據文件的位置。要實現這個目的的話,就必須首先要讓數據文件脫機,然后再將其啟動到合適的位置。

2、 系統遇到數據文件故障時會自動關閉。

有時候數據庫系統也會自動關閉數據文件。如當數據庫系統往數據文件中寫入數據的時候,如果發現寫入過程中出現錯誤的話,就會將這個數據文件設置為脫機,并將這個信息寫入到日志中。數據庫管理員接到報警信息后,就需要修復這個數據文件。修復完畢后,還需要手工的將這個數據文件設置為聯機。此時數據庫系統才會重新啟用這個數據文件。可見,當數據文件無法正確寫入時,也是數據文件脫機的一個原因。

將某個數據文件設置為脫機時,不會影響到其他數據文件的可用性。如數據庫管理員在規劃數據文件的時候,是按照部門來規劃的。即其他部門的用戶仍然可以在系統中訪問自己若需要的數據。為此這個特性的話可以有效的的減少數據庫當機的時間,實現數據庫的最大可用性。? 分步啟動數據庫以重命名數據文件

二、歸檔模式與非歸檔模式下分別如何更改?

Oracle數據庫工作模式大致分為歸檔模式與非歸檔模式。在不同的操作模式下,其數據文件可用性維護的方法稍有差異。為此各位數據庫管理員要了解在不同操作模式下的維護方式。只有如此,才能夠采取合適的方式來改變數據文件的可用性。

若數據庫處于歸檔模式,則要使一個單獨的數據文件聯機或者脫機,則只需要使用ALTER DATABASE的DATEFILE字句即可。即按照如下的形式就可以將某個數據文件設置為脫機或者聯機。當以下命令執行成功后,系統會提示“數據庫已經更改”。

ALTER DATABASE DATAFILE ‘數據文件存儲路徑與名字’ OFFLINE/ONLINE;

但是要注意,如果數據庫不是處于歸檔模式,則執行上面的語句更改數據文件的可用性時,數據庫會提示錯誤信息。若將某個數據文件設置為脫機時,“除非使用介質恢復,否則不允許立即脫機”。如將某個數據文件設置為聯機時,會提示“數據文件5,需要介質恢復”。注意這里的5代表的是數據文件的絕對文件號。在Oracle數據庫中文件號是數據庫系統標識數據文件的一個工具,就好像人的身份證一樣,唯一標識了一個數據文件。在Oracle中,文件號分為絕對文件號和相對文件號。絕對文件號是在整個數據庫中唯一的標識一個數據文件。而相對文件號是在表空間中唯一的標識一個數據文件。也就是說,相對文件號在同一個表空間內是唯一的,但是并不保障在整個數據庫內是唯一的。此時數據庫可能需要表空間與相對文件號兩個參數才能夠唯一的定位數據文件。對于中等規模以下的數據庫系統,往往相對文件號與絕對文件號是相同的。但是當數據庫變得很大時,相對文件號與決定文件號就可能有所差異。由于在錯誤信息中沒有直接說明數據文件的名稱,為此數據庫管理員不得不先將這個文件號轉換到對應的數據文件名字,然后再去想解決方法。(IT專家網獨家:重定位數據文件的位置)

可見,如果當數據庫采用非歸檔模式時,就無法采用上面方式將數據文件聯機或者脫機。此時需要稍微修改一下上面的語句來完成。如可以將這個語句改為:

ALTER DATABASE DATAFILE ‘數據文件存儲路徑與名字’ OFFLINE DROP;

即需要在原先的語句后面加入DROP關鍵字。此時就可以正常將非歸檔模式下的數據文件脫機了。不過需要注意的一點就是,無非采用正常的方式將非歸檔模式下的數據文件設置為聯機。正常情況下,只有采用介質恢復的形式才能夠將非歸檔模式下的數據文件設置為聯機。所以說,如果數據庫采用的是非歸檔模式,那么在將數據文件設置為脫機時,就需要慎重了。因為此時再想將脫機的數據文件設置為聯機,可沒有這么簡單了。

三、更改數據文件可用性的注意事項。

從以上的分析中可以看出要改變某個數據文件的狀態,特別是歸檔模式下數據文件的可用性,并不是很困難的一件事情。不過在維護數據文件可用性的時候,下面的一些內容還需要引起各位數據庫管理員的注意。

1、 系統表空間不能夠脫機。

在Oracle數據庫中,表空間可以分為系統表空間和非系統表空間。這里需要明白的是,系統表空間中的數據文件無法設置為脫機。后續大家還沒有認識到這個的重要性。系統表空間中的數據文件無法脫機,就表示當數據庫投入生產之后,就無法更改系統表空間中數據文件的存儲位置。所以在數據庫規劃時,就好規劃好系統表空間中數據文件的存儲。另外,也不要將用戶的數據文件存放到這個系統表空間中。

2、 表空間可用性與數據文件可用性之間的關系。

數據庫表空間的可用性與數據文件的可用性存在著很密切的聯系。一般來說,當將某個表空間設置為脫機或者聯機時,這個表空間下面的所有數據文件的可用性也會隨之變為脫機或者聯機。但是,反過來即不成立。如先通過表空間脫機將所有的數據文件的可用性設置為脫機狀態。然后再一一的將這個表空間的數據文件全部設置為聯機,此時這些數據文件仍然不可用。這主要是因為這些數據文件的主人,表空間的使用狀態還是為脫機。所以說,數據文件可用性的改變,不會影響到表空間。但是表空間使用狀態的改變,卻會影響其下面的所有數據文件。

這個特性有時候很有用。如現在數據庫管理員出于性能優化的考慮,要將某個表空間移植到另外一個快性能更佳的硬盤上,以減少硬盤I/O的沖突。此時就需要將這個表空間的數據文件設置為脫機。為此數據庫管理員就不需要一一的去改變這個表空間下面數據文件的可用性。而是可以直接將這個表空間設置為脫機,那么下面數據文件的可使用狀態也會發生相應的改變。然后就可以移動這些數據文件的位置了。等到移動完成后,再將這個表空間設置為聯機即可。此時這個表空間下面的所有數據文件也會變為聯機。可見,通過表空間的可用性來維護數據文件的可用性,在需要維護整個表空間中數據文件的可用形時是非常便捷的一個方式。不過這里仍然需要注意一點,就是其仍然受到歸檔模式與非歸檔模式兩種操作模式的限制。

最后需要說明的一點就是,數據文件在創建數據庫或者增加數據文件時就會被創建。如現在為某個表空間增加了一個數據文件,即使這個數據文件還沒有數據,系統就已經為其分配了存儲空間。為此當數據文件創建后要調整數據文件的名字與位置時,會比較麻煩。所以筆者建議數據庫管理員,在創建數據文件之前先要對其進行合理的規劃,以免后續調整的麻煩。在數據文件創建之后,最好不要隨意的通過更改可用性來調整數據文件的配置。

來源:網絡 編輯:聯動北方技術論壇

【篇二】有一職工基本情況的數據庫文件

Windows下生成caffe訓練用的leveldb格式的庫文件并求其均值

2016-8-27

本文介紹在Windows環境下,采用matlab將圖片格式的文件轉化為深度學習框架caffe訓練用的leveldb格式的庫文件的方法及相應的代碼。運行環境為:

windows7+vs2013+matlab2015a+caffe(微軟版)。

以下部分以mnist圖像數據集中的t10k-images.idx3-ubyte為例進行說明;

1.設置生成leveldb格式的庫文件還是lmdb格式的庫文件

采用vs2013修改并編譯J:\caffe-windows\tools\convert_imageset.cpp,從而修改生成的庫文件的格式是leveldb還是lmdb格式。

//DEFINE_string(backend, "lmdb", //生成的庫文件為lmdb格式

DEFINE_string(backend, "leveldb", // 生成的庫文件為leveldb格式

"The backend {lmdb, leveldb} for storing the result");

2.將mnist文件轉化為圖片文件及標簽文件

采用matlab代碼將t10k-images.idx3-ubyte轉化為生成leveldb格式的庫文件所需的圖片文件夾(mnist_img)及標簽文件(mnist_labels.txt)。其中標簽文件包括圖片名稱及圖片的標簽,圖片名稱與mnist_img文件夾中圖片的名稱相同;

clear all;

clc

close all

%**********generate the images files with specified names***************

images = loadMNISTImages("t10k-images.idx3-ubyte");

size_of_images=size(images)

img_db=reshape(images,28,28,10000);

for num_img=1:1000

img1=img_db(:,:,num_img);

imwrite(img1,["./mnist_img/mnist_",num2str(num_img),".jpg"]);

end

%*******generate label files**************************

labels = loadMNISTLabels("t10k-labels.idx1-ubyte");

fp = fopen("F:\mnist_folder\MNIST_dataset\mnist_labels.txt","wt");

for label_seq =1:1000

fprintf(fp, "%s %d\n",["mnist_",num2str(label_seq),".jpg"],labels(label_seq));

end

fclose(fp);

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

上述matlab文件運行后,文件夾下的文件及標簽文件如下圖所示:

3.生成convert_imageset可執行文件

在windows下的vs2013中打開J:\caffe-windows\windows文件夾下的caffe解決方案。并生成解決方案,即同時生成convert_imageset可執行文件。convert_imageset可執行文件位于J:\caffe-windows\Build\x64\Release文件夾下。也可將convert_imageset項目“設為啟動項目”,然后對vs2013的菜單欄執行操作:“生成-->僅用于項目-->僅重新生成convert_imageset(R)”。

4.拷貝圖片文件夾及標簽文件

將圖片文件夾(mnist_img)及標簽文件(mnist_labels.txt)拷貝至caffe的根目錄(caffe-windows)下自建的vggface文件夾中。

5.生成leveldb庫文件的命令

在window的命令窗口中,輸入以下命令(命令及文件位置采用絕對路徑):

J:\caffe-windows\Build\x64\Release\convert_imageset.exe J:\caffe-windows\vggface\mnist_img\ J:\caffe-windows\vggface\mnist_labels.txt J:\caffe-windows\vggface\mnist_train_leveldb

上述命令的規則為:

exe所在路徑+空格+[LEVELDB/LMDB]+數據(需處理的圖片所在文件夾)+空格+數據列表以及標簽的txt+空格+生成的leveldb數據存放的路徑。[LEVELDB/LMDB]表示這一項可沒有,默認為LMDB格式,也可在這個位置輸入LEVELDB生成LEVELDB格式的庫文件。

上述命令運行后所生成的文件夾及文件如下圖所示:

命令運行記錄如下圖所示,前面為運行失敗的記錄,最后一條為運行成功的記錄:

6.loadMNISTLabels文件及loadMNISTImages文件

function labels = loadMNISTLabels(filename)

%loadMNISTLabels returns a [number of MNIST images]x1 matrix containing

%the labels for the MNIST images

fp = fopen(filename, "rb");

assert(fp ~= -1, ["Could not open ", filename, ""]);

magic = fread(fp, 1, "int32", 0, "ieee-be");

assert(magic == 2049, ["Bad magic number in ", filename, ""]);

numLabels = fread(fp, 1, "int32", 0, "ieee-be");

labels = fread(fp, inf, "unsigned char");

assert(size(labels,1) == numLabels, "Mismatch in label count");

fclose(fp);

end

%%%%new function%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

function images = loadMNISTImages(filename)

%loadMNISTImages returns a 28x28x[number of MNIST images] matrix containing

%the raw MNIST images

fp = fopen(filename, "rb");

assert(fp ~= -1, ["Could not open ", filename, ""]);

magic = fread(fp, 1, "int32", 0, "ieee-be");

assert(magic == 2051, ["Bad magic number in ", filename, ""]);

numImages = fread(fp, 1, "int32", 0, "ieee-be");

numRows = fread(fp, 1, "int32", 0, "ieee-be");

numCols = fread(fp, 1, "int32", 0, "ieee-be");

images = fread(fp, inf, "unsigned char");

images = reshape(images, numCols, numRows, numImages);

images = permute(images,[2 1 3]);

fclose(fp);

% Reshape to #pixels x #examples

images = reshape(images, size(images, 1) * size(images, 2), size(images, 3));

% Convert to double and rescale to [0,1]

images = double(images) / 255;

end

7.求圖像的leveldb庫文件的均值

(1) 設置對leveldb格式的庫文件還是lmdb格式的庫文件進行求均值

采用vs2013修改并編譯convert_imageset.cpp文件,使其求期望格式的庫文件的均值

//DEFINE_string(backend, "lmdb",//求lmdb格式庫文件的均值

DEFINE_string(backend, "leveldb",//求leveldb格式庫文件的均值

"The backend {leveldb, lmdb} containing the images");

(2) 采用以下命令求庫文件的均值

J:\caffe-windows\Build\x64\Release\compute_image_mean.exe J:\caffe-windows\mnist_mycmd\mnist_train_leveldb_1 J:\caffe-windows\mnist_mycmd\mnist_mean.binaryproto

上述命令的規則為:

exe所在路徑+空格+LEVELDB/LMDB格式的庫文件夾+空格+均值文件名.binaryproto。

上述命令運行后命令窗口如下圖所示:

推薦訪問: 有一 基本情況 數據庫文件

【關于有一職工基本情況的數據庫文件(精選范文2篇)】相關推薦

工作總結最新推薦

NEW