1. 程式人生 > >金蝶實習(十)——安裝開發環境

金蝶實習(十)——安裝開發環境

  今天是實習的第十天了,現在才把開發環境搭建好,有點慚愧。不過,誰讓咱電腦配置不夠呢!前天升完級後,昨天考試也沒去體驗升完級後的感覺。應該說不抱有太大的希望吧,畢竟咱電腦還是單核,雖然現在記憶體1個多G,可原裝只有256M,40G啊!

  天氣很冷據說有零下一度了,早上很急,生怕趕不上公交車。到公司的時候8點半多一點,辦公室裡面也就稀稀拉拉的幾個人,於是鬆了一口氣。要知道,晚來一點就沒位置坐了,這裡除了我之外還有其他幾個實習的呢。

  一來開啟電腦就迫不及待地去伺服器上共享待安裝的軟體,其實主要的也就兩個:EAS Server和ORACLE10g。急的原因不為別的,倒是擔心電腦還是裝不上這些軟體怕電腦白升級了。後來勉強裝上去了,就是三個盤的空間總共剩下3個G不到,有驚無險啊。其實安裝的過程中我不斷注視磁碟空間的變化,還解除安裝了一個Rational Rose2003,其實是捨不得刪的沒辦法啊。

  折騰了一天環境終於全部搭建好了,該碰到的問題我一個不落甚至還出現了一些前人未遇到的問題,汗!總的步驟如下:

  1、首先安裝EAS Server

  其實應該先安裝ORACLE資料庫的,只是當時不能確定能否裝上,於是就先它了。整個過程還蠻順利的,沒有報異常。

  安裝完成後,我立刻啟動它,把最大記憶體調到了512MB,因為考慮到還要留點給ORACLE啊,系統提示不能低於768M,狂暈。之後註冊了一個數據中心,資料庫連線到伺服器上的,正常啟動。耶,第一步成功!

  2、其次安裝ORACLE

  之所以安裝這些軟體,那是因為下個月開始我就要正式投入到專案開發中了。在公司可能會有點問題解決不了帶回來琢磨琢磨,總不能把公司的伺服器帶著吧。安裝ORACLE本身並不太麻煩,只是中途安裝的時候360安全衛士好像阻止了一個登錄檔的寫入,導致安裝完畢後找不到資料庫例項。

  第一次,安裝失敗。重來唄,還能咋的!吸取以前安裝SQL Server 2005的教訓,解除安裝前在網上找了一個解除安裝步驟,果然解除安裝得很乾淨。其實用ORACLE10g自帶的解除安裝程式依已經能夠解除安裝得很徹底了,只是出於謹慎考慮,安裝一下40分鐘啊,咱可不想再來一次!

  解除安裝步驟如下:

  1) 開始->設定->控制面板->管理工具->服務停止所有Oracle服務;
  2) 開始->程式->Oracle – OraDb10g_home1>Oracle Installation Products-> Universal Installer 卸裝所有Oracle產品,但Universal Installer本身不能被刪除;
  3) 執行regedit,選擇HKEY_LOCAL_MACHINE/SOFTWARE/ORACLE,按del鍵刪除這個入口;
  4) 執行regedit,選擇HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services,滾動這個列表,刪除所有Oracle入口;
  5) 執行refedit,選擇HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services/Eventlog/Application,刪除所有Oracle入口;
  6) 開始->設定->控制面板->系統->高階->環境變數,刪除環境變數CLASSPATH和PATH中有關Oracle的設定;
  7) 從桌面上、STARTUP(啟動)組、程式選單中,刪除所有有關Oracle的組和圖示;
  8) 刪除c:/Program Files/Oracle目錄;
  9) 重新啟動計算機,重起後才能完全刪除Oracle所在目錄 ;
  10) 刪除與Oracle有關的檔案,選擇Oracle所在的預設目錄C:/Oracle,刪除這個入口目錄及所有子目錄,並從Windows XP目錄(一般為d:/WINDOWS)下刪除以下檔案ORACLE.INI、oradim73.INI、oradim80.INI、oraodbc.ini等等;
  11) WIN.INI檔案中若有[ORACLE]的標記段,刪除該段;
  12) 如有必要,刪除所有Oracle相關的ODBC的DSN;
  13) 到事件檢視器中,刪除Oracle相關的日誌 說明:如果有個別DLL檔案無法刪除的情況,則不用理會,重新啟動,開始新的安裝,安裝時,選擇一個新的目錄,則,安裝完畢並重新啟動後,原來的目錄及檔案就可以刪除掉了。

  解除安裝完畢,檢視登錄檔以及安裝目錄均沒有殘留資訊之後,重啟電腦。立刻關掉瑞星防毒軟體和360安全衛士,終於30多分鐘就裝完了,感謝上帝!

3、新建/註冊資料中心

  一開始我也很奇怪,直接裝個數據庫不就得了幹嘛費那勁去安裝EAS伺服器啊。呵呵,其實ORACLE和我之前使用的SQL Server2005很不一樣,尤其是要支撐EAS BOS 這樣的大型企業版系統開發軟體,資料庫中的表那叫一個多啊,毫不誇張地說至少幾萬吧。一般的資料哪裡有這個能耐!EAS伺服器只管理資料的使用者、資料庫例項、資料庫名稱等,把這些集合在一起就是所謂的資料中心了(也叫帳套)。

  裝上這些軟體後要能夠脫離伺服器開發系統,那麼本地機上裝了資料庫管理系統總要有資料庫吧(預設的除外)。可是偌大一個ORACLE我從哪裡著手去建呢?其實想法很簡答,就是把以前用的資料庫放到本地就OK了。要是在SQL Server2005裡面那就太容易了,現在伺服器上分離資料庫,然後拷過來附加就是了。而對於號稱全球第一的ORACLE來說,當然不會允許這麼簡單的操作了,要不然甲骨文公司也就沒那麼神氣了!我又是問人又是百度、谷歌又是論壇、CSDN的終於理清了頭緒。

  要把資料庫放到本機上,首先要建立該資料庫的訪問許可權,說穿了也就是最簡單的使用者名稱和口令了。網上查了半天都是在又黑又小的命令提示符下寫命令完成的,魏大哥給我傳了一個使用者圖形介面(PL/SQL Developer)和一個破解軟體一個漢化軟體。

  和SQL Server2000挺像的,裡面有查詢分析器,可以看到表的結構、索引、使用者等。建立使用者時必須制定表空間和臨時表空間,這個可不像SQL Server那樣填一填就可以了,需要語句的。不過這裡就不用開啟SQLPLUS或者cmd命令了,直接在SQL視窗寫就行了。

  oracle建立表空間
 //建立臨時表空間

   create temporary tablespace test_temp
   tempfile 'E:/oracle/product/10.2.0/oradata/testserver/test_temp01.dbf'
   size 32m
   autoextend on
   next 32m maxsize 2048m
   extent management local;

 //建立資料表空間
  create tablespace test_data
  logging
  datafile 'E:/oracle/product/10.2.0/oradata/testserver/test_data01.dbf'
  size 32m
  autoextend on
  next 32m maxsize 2048m
  extent management local;

  //建立使用者並指定表空間
  create user testserver_user identified by testserver_user
  default tablespace test_data
  temporary tablespace test_temp;

  //給使用者授予許可權

  grant connect,resource to testserver_user;

  //以後以該使用者登入,建立的任何資料庫物件都屬於test_temp 和test_data表空間,這就不用在每建立一個物件給其指定表空間了。

  建立使用者時也可以通過介面選擇來建立(簡單一點),只不過必須事先建立好表空間和臨時表空間。使用者的建立過程會自動生成SQL語句(和SQL Server相似):

  //自動生成程式碼
   -- Create the user
  create user WZ
  identified by ""
  default tablespace TEST_DATA
  temporary tablespace TEST_TEMP
  profile DEFAULT;

  -- Grant/Revoke role privileges
  grant dba to WZ with admin option;
  -- Grant/Revoke system privileges
  grant unlimited tablespace to WZ with admin option;

  這裡還要講一下,ORACLE和SQL Server不一樣的還體現在ORACLE在安裝過程中只能指定口令卻不能指定使用者名稱。預設的使用者名稱是DBSNMP(還是看高手的部落格才知道的)。

  表、臨時表空間和使用者建立完畢,現在就是匯出資料和匯入資料了,說專業一點就是“備份資料”和“恢復資料”了,只是操作的電腦不一樣。具體如下:

  1) 先是備份資料

  exp wz/[email protected] rows=y indexes=y grants=y buffer=65536

  feedback=10000 full=y file=wz.dmp

  2) 恢復資料

  imp wz/[email protected] file=E:/wz/wz.dmp indexs=y ignore = y fromuser = wz

  touser = wz log=E:/wz/wz.log

  下面開始恢復資料了,如圖。大概花了30多分鐘,前面建立的表空間和臨時表空間在這裡和SQL Server裡面的資料庫檔案MDF和LDF意義差不多。

  資料庫搞好後接著就是新建資料中心了,指定好引數後系統老是說字符集不符合EAS的規定,那就修改吧,上網查!居然也找到了不少方法,例舉一些吧:

      Ⅰ)什麼是oracle字符集

    Oracle字符集是一個位元組資料的解釋的符號集合,有大小之分,有相互的包容關係。ORACLE 支援國家語言的體系結構允許你使用本地化語言來儲存,處理,檢索資料。它使資料庫工具,錯誤訊息,排序次序,日期,時間,貨幣,數字,和日曆自動適應本地化語言和平臺。

  影響oracle資料庫字符集最重要的引數是NLS_LANG引數。它的格式如下:

  NLS_LANG = language_territory.charset

  它有三個組成部分(語言、地域和字符集),每個成分控制了NLS子集的特性。其中:

  Language 指定伺服器訊息的語言,territory 指定伺服器的日期和數字格式,charset 指定字符集。如:AMERICAN _ AMERICA. ZHS16GBK

  從NLS_LANG的組成我們可以看出,真正影響資料庫字符集的其實是第三部分。所以兩個資料庫之間的字符集只要第三部分一樣就可以相互匯入匯出資料,前面影響的只是提示資訊是中文還是英文。

  Ⅱ) 如何查詢Oracle的字符集

  很多人都碰到過因為字符集不同而使資料匯入失敗的情況。這涉及三方面的字符集,一是oracel server端的字符集,二是oracle client端的字符集;三是dmp檔案的字符集。在做資料匯入的時候,需要這三個字符集都一致才能正確匯入。

  ① 查詢oracle server端的字符集

  有很多種方法可以查出oracle server端的字符集,比較直觀的查詢方法是以下這種:SQL>select userenv(‘language’) from dual;

  結果類似如下:AMERICAN _ AMERICA. ZHS16GBK

  ② 如何查詢dmp檔案的字符集

  用oracle的exp工具匯出的dmp檔案也包含了字符集資訊,dmp檔案的第2和第3個位元組記錄了dmp檔案的字符集。如果dmp檔案不大,比如只有幾M或幾十M,可以用UltraEdit開啟(16進位制方式),看第2第3個位元組的內容,如0354,然後用以下SQL查出它對應的字符集:

  SQL> select nls_charset_name(to_number('0354','xxxx')) from dual;

  ZHS16GBK

  如果dmp檔案很大,比如有2G以上(這也是最常見的情況),用文字編輯器開啟很慢或者完全打不開,可以用以下命令(在unix主機上):

  cat exp.dmp |od -x|head -1|awk '{print $2 $3}'|cut -c 3-6

  然後用上述SQL也可以得到它對應的字符集。

  ③ 查詢oracle client端的字符集

  這個比較簡單。在windows平臺下,就是登錄檔裡面相應OracleHome的NLS_LANG。還可以在dos窗口裡面自己設定,比如:

  set nls_lang=AMERICAN_AMERICA.ZHS16GBK

  這樣就隻影響這個窗口裡面的環境變數。

  在unix平臺下,就是環境變數NLS_LANG。

  $echo $NLS_LANG

  AMERICAN_AMERICA.ZHS16GBK

  如果檢查的結果發現server端與client端字符集不一致,請統一修改為同server端相同的字符集。

   Ⅲ) 修改oracle的字符集

  上文說過,oracle的字符集有互相的包容關係。如us7ascii就是zhs16gbk的子集,從us7ascii到zhs16gbk不會有資料解釋上的問題,不會有資料丟失。在所有的字符集中utf8應該是最大,因為它基於unicode,雙位元組儲存字元(也因此在儲存空間上佔用更多)。

  一旦資料庫建立後,資料庫的字符集理論上講是不能改變的。因此,在設計和安裝之初考慮使用哪一種字符集十分重要。根據Oracle的官方說明,字符集的轉換是從子集到超集受支援,反之不行。如果兩種字符集之間根本沒有子集和超集的關係,那麼字符集的轉換是不受oracle支援的。對資料庫server而言,錯誤的修改字符集將會導致很多不可測的後果,可能會嚴重影響資料庫的正常執行,所以在修改之前一定要確認兩種字符集是否存在子集和超集的關係。一般來說,除非萬不得已,我們不建議修改oracle資料庫server端的字符集。特別說明,我們最常用的兩種字符集ZHS16GBK和ZHS16CGB231280之間不存在子集和超集關係,因此理論上講這兩種字符集之間的相互轉換不受支援。

  ① 修改server端字符集(不建議使用)

  在oracle 8之前,可以用直接修改資料字典表props$來改變資料庫的字符集。但oracle8之後,至少有三張系統表記錄了資料庫字符集的資訊,只改props$表並不完全,可能引起嚴重的後果。正確的修改方法如下:

  $sqlplus /nolog

  SQL>conn / as sysdba;

  若此時資料庫伺服器已啟動,則先執行SHUTDOWN IMMEDIATE命令關閉資料庫伺服器,然後執行以下命令:

  SQL>STARTUP MOUNT;

  SQL>ALTER SYSTEM ENABLE RESTRICTED SESSION;

  SQL>ALTER SYSTEM SET JOB_QUEUE_PROCESSES=0;

  SQL>ALTER SYSTEM SET AQ_TM_PROCESSES=0;

  SQL>ALTER DATABASE OPEN;

  SQL>ALTER DATABASE CHARACTER SET ZHS16GBK;

  SQL>ALTER DATABASE national CHARACTER SET ZHS16GBK;

  SQL>SHUTDOWN IMMEDIATE;

  SQL>STARTUP

  ② 修改dmp檔案字符集

  上文說過,dmp檔案的第2第3位元組記錄了字符集資訊,因此直接修改dmp檔案的第2第3位元組的內容就可以‘騙’過oracle的檢查。這樣做理論上也僅是從子集到超集可以修改,但很多情況下在沒有子集和超集關係的情況下也可以修改,我們常用的一些字符集,如US7ASCII,WE8ISO8859P1,ZHS16CGB231280,ZHS16GBK基本都可以改。因為改的只是dmp檔案,所以影響不大。

  具體的修改方法比較多,最簡單的就是直接用UltraEdit修改dmp檔案的第2和第3個位元組。比如想將dmp檔案的字符集改為ZHS16GBK,可以用以下SQL查出該種字符集對應的16進位制程式碼:

  SQL> select to_char(nls_charset_id('ZHS16GBK'), 'xxxx') from dual;

  0354

  然後將dmp檔案的2、3位元組修改為0354即可。

  如果dmp檔案很大,用ue無法開啟,就需要用程式的方法了。網上有人用java儲存過程寫了轉換的程式(用java儲存過程的好處是通用性教好,缺點是比較麻煩)。我在windows下測試通過。但要求oracle資料庫一定要安裝JVM選項。有興趣的朋友可以研究一下程式程式碼
 

  最後試了很多辦法還是搞不定,不管怎麼改字符集系統老是說與EAS不符合,徹底暈了。於是問資深同志,結果人家一分鐘就搞好了,說“幹嘛新建啊,直接註冊就可以了”,汗!

  就這樣一天就這麼過了,總算把環境配置起來了,執行一下EAS客戶端,成功,哦也!

相關推薦

實習()——安裝開發環境

  今天是實習的第十天了,現在才把開發環境搭建好,有點慚愧。不過,誰讓咱電腦配置不夠呢!前天升完級後,昨天考試也沒去體驗升完級後的感覺。應該說不抱有太大的希望吧,畢竟咱電腦還是單核,雖然現在記憶體1個多G,可原裝只有256M,40G啊!   天氣很冷據說有零下一度了,早上很急

VB插件開發,單據不滿足條件,拒絕保存

div blog res bsp 金蝶 true msgbox eight 設置 新增一張簡潔的Bos單據,功能:當文本1輸入框裏輸入的內容是“222”,則保存數據,當內容是其他的,則拒絕保存 這裏還要獲取文本1的字段名 接下來是VB插件開發了

VB插件開發,獲取後臺數據庫數據

pri cor provide sql tool 應該 arc database 代碼 Private Sub m_BillInterface_MenuBarClick(ByVal BOSTool As K3ClassEvents.BOSTool, Cancel As B

K3 二次開發常用表

select * from icclasstype  where fname_chs like '%供貨%'   用此表基本上可以查詢到所有的表 select * from POrequest               --採購申請單表頭 select * from POr

xilinx 安裝開發環境

------------------------------------------------------------------ gcc工作環境 sudo apt-get install libncurses5-dev   sudo apt-get install bui

arduino入門1-安裝開發環境

選擇紅色箭頭指向兩個中的一個 安裝包需要按照安裝流程安裝,免安裝版本解壓即可 建議下載安裝版本(免安裝版本需要自行安裝驅動程式)並且在安裝時選中下圖多選框 安裝完成開啟後進入 在這裡選擇你的開發板 在這裡選擇你的埠號 正確安裝後這裡會顯

CentOS 7.4系統-Apache-PHP安裝-開發環境配置

配置需求: 系統:CentOS 7.4 Apache版本:Apache2.4 PHP版本:php-5.6.32.tar.gz 檔案傳輸: ssh實現windows與Linux之間傳送檔案,linux上安裝lrzsz: yum install -y lrzsz

ubuntu 安裝開發環境-----全

在Ubuntu下安裝GCC和其他一些Linux系統有點不一樣。 一、安裝 方法一: sudo apt-get build-dep gcc 方法二: sudo apt-get install build-essential 安裝完了可以執行如下

mac下安裝配置go開發環境

string hello pkg obi cin keyword art ces mac 1、官網下載安裝包(需FQ)   https://storage.googleapis.com/golang/go1.7.darwin-amd64.pkg 2、配置Go環境變量GOPA

PHP開發環境&MySQL下載安裝及配置流程

str gb2312 sni _array 連接 login log res apache2 PHP開發環境&MySQL下載安裝及配置流程 因工作須要,從0開始學PHP,前幾天看完視頻教程後開始搞開發環境,到今天才好。這裏把安裝配置流程梳理一下分享

linux 下安裝web開發環境

技術 cnblogs -- 時間日誌 java inux 協議 環境變量 含義 以下使用 linux centos系統 一、JDK的安裝 1、下載jdk-8u111-linux-x64.tar.gz 2、解壓該文件,將解壓後的文件復制到 /usr/local/jdk1.7

ubuntu操作系統以及開發環境安裝

lar http 比較 acc pan 開發 mode ubuntu 視頻 網盤視頻:裏面包含了centos,ubuntu,Solaris 三種目前比較主流的操作系統的安裝,以及他們的開發環境的安裝 https://pan.baidu.com/disk/home#list/

vscode 搭建go開發環境的13個插件的安裝

gop 第三方 git 但是 由於 開發 教程 最簡 uil 由於網的問題 大家都不能直接go get 這裏從易到難按難度給大家推薦幾種方法 最簡單的FQ 但是能FQ你還不能裝 請問是假的FQ嗎? 第一 用git 直接git反而能從那邊趴下代碼 但是要自己go in

【轉】Nodejs學習筆記(一)--- 簡介及安裝Node.js開發環境

ack 目錄 javascrip 難度 時間 網站開發 clas jetbrains 常用 目錄 學習資料 簡介 安裝Node.js npm簡介 開發工具 Sublime Node.js開發環境配置 擴展:安裝多版本管理器 學習資料   1.深入淺出Node.j

K3 WISE 14.3 安裝文件包下載百度雲盤地址

金蝶 k3 erp k/3 wise 14.3 K/3 WISE 14.3 金蝶官方下載地址:https://pan.baidu.com/s/1bYeyNs#list/path=%2FK3%E5%AE%89%E8%A3%85%E5%8C%85%2FK3%20WISE14.3&par

centos開發環境安裝的備忘

tin .com oschina then yun centos 5 centos 6 user lob #Centos visudo運行普通用戶$(whomai)執行sudo操作 http://www.cnblogs.com/x

vue開發環境安裝步驟

highlight 查看 project vue 啟動 blog 安裝 模版 gis 前提:vue開發前提是安裝好nodejs後,在nodejs環境下運行 1.npm工具在國內的網絡環境下比較慢 推薦使用淘寶npm鏡像https://npm.taobao.org/

PDI 學習2:KETTLE安裝環境變量配置,開發準備

add san size 20px mil bin tools.jar 下載 連接   在這裏把環境變量的配置具體拿出來,有問題的同學自己比對一下: 1、安裝JDK,KETTLE   1) KETTLE拷貝程序包,綠色安裝;     官方下載:http://communit

PHP學習_開發環境搭建_AapcheHTTPD的安裝

可選 src ont pch 分享 php開發 開發環境 -i 端口 記住一句話 PHP是ApacheHTTPD的一個模塊 PHP是運行在服務器端的,靠的就是ApacheHTTPD去解析並加載PHP。 什麽都不說,直接上一張圖 學習這個PHP

win7win8 64位匯編開發環境合集安裝與設置

雙線 初始 sta 光盤 特效 option 錯誤 破解 div win7win8 64位匯編開發環境合集安裝與設置 下載 win7 win8 64位匯編開發環境.rar 下載地址(免積分下載) http://download.csdn.net/deta