2018.06.06
v6.7.7 5
設定-> 使用者自訂 -> 備份 -> 為下次開啟程式記住開檔狀態(不打勾) -> 關閉
重新啟動Notepad++即生效
真的找很久......
沒有人建議一下這設定的位置很奇怪嗎?
2018年6月6日 星期三
2017年12月14日 星期四
ORACLE ORA-01034 and ORA-27101
AIX: 5300-07
oslevel -r
Oracle: Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - 64bi
select * from v$version
我們有一個ORACLE 資料庫,作業系統是AIX,運行已經有好幾年了。最近發生JBOSS AP在啟動建立資料庫連線的時候報錯,但不全然都會這樣,有些連線建立成功,因此這狀況就變成時有時無。在AP主機重啟時,就會報這錯,但AP還算能登入使用,只是有時候會反應有些功能沒有作業成功而報錯,錯誤訊息依然是以下這個。
WARN
[org.jboss.resource.connectionmanager.JBossManagedConnectionPool]
Throwable while attempting to get a new connection: null
org.jboss.resource.JBossResourceException:
Could not create connection; - nested throwable: (java.sql.SQLException:
ORA-01034: ORACLE not available
ORA-27101: shared memory realm does not
exist
IBM AIX RISC System/6000 Error: 2: No such
file or directory)
get a new connection: null
Could not create connection
一般來說是無法連到DB主機
ORA-01034, ORA-27101: 網路上很多人說,這是資料庫沒有啟動好,或配置不良,應該是泛指剛剛建立完成的資料庫,但我們的已經運行好幾年了,應該不可能。
剛開始,就是拼命地把AP主機重新啟動,觀察AP主機上的執行環境是否有異常蠕蟲或病毒,甚至想要分散一台AP主機的負載量來測試,但方向都不正確。
觀察DB 主機的使用情況,使用ORACLE 身分登入主機
參考這篇文章 http://intermediatesql.com/aix/how-oracle-uses-memory-on-aix-part-1-processes/
參考這篇文章 http://intermediatesql.com/aix/how-oracle-uses-memory-on-aix-part-1-processes/
$ ps -elf |
egrep " oracle${ORACLE_SID} | ora_.*_${ORACLE_SID} " |
grep -v egrep | awk '{sum += $10} END {print sum/1024}'
53688.7
$ sysresv
$ sysresv
IPC Resources for ORACLE_SID "xxxxxxxx" :
Shared Memory:
ID KEY
1048577 0x6598f430
Oracle Instance alive for sid "xxxxxxxx"
$ ipcs -bm|grep 1048577
m 1048577 0x6598f430 --rw-r----- oracle dba 524296192 <--500mb p="">--500mb>
總共使用的記憶體: 53 GB + 500 MB =53.5 GB
ps -ef|grep oracle${ORACLE_SID}|grep -v grep |wc -l
540
select * from v$version
161
從資料庫裡查看SESSION 大約是161
很明顯兩邊的數量差很多,可能是程序已經離開,但ORACLE認為還在用沒放開,導致資源消耗。
161
從資料庫裡查看SESSION 大約是161
很明顯兩邊的數量差很多,可能是程序已經離開,但ORACLE認為還在用沒放開,導致資源消耗。
關閉所有AP連線行為,將ORACLE DB 重新啟動
shutdown immediate 等待約莫10分鐘,還是沒有shutdown
改用
shutdown abort 等待約莫3分鐘
觀察主機ORACLE 的程序數量
ps -ef|grep oracle${ORACLE_SID}|grep -v grep |wc -l
0
啟動資料庫
Startup
重新啟動AP主機服務,AP 啟動建立資料庫連線的時候,沒有在報錯
說實在的,AIX上的記憶體還真的是不太會看,以下列一些相關指令,參考看看
$ vmstat -v
2035712 memory pages
1957164 lruable pages
2663 free pages
1 memory pools
472236 pinned pages
80.0 maxpin percentage
10.0 minperm percentage
20.0 maxperm percentage
11.0 numperm percentage
215325 file pages
0.0 compressed percentage
0 compressed pages
11.0 numclient percentage
20.0 maxclient percentage
215323 client pages
0 remote pageouts scheduled
483 pending disk I/Os blocked with no pbuf
60078 paging space I/Os blocked with no psbuf
2484 filesystem I/Os blocked with no fsbuf
0 client filesystem I/Os blocked with no fsbuf
211963 external pager filesystem I/Os blocked with no fsbuf
0 Virtualized Partition Memory Page Faults
0.00 Time resolving virtualized partition memory page faults
$ vmstat
System configuration: lcpu=4 mem=7952MB
kthr memory page faults cpu
----- ---------------- ------------------------ ----------------- -----------
r b avm fre re pi po fr sr cy in sy cs us sy id wa
1 2 1977424 2671 0 0 0 192 1610 0 76 2486 480 8 1 89 1
$ df -k
Filesystem 1024-blocks Free %Used Iused %Iused Mounted on
/dev/hd4 524288 257492 51% 8417 13% /
/dev/hd2 6291456 1376552 79% 95241 24% /usr
/dev/hd9var 524288 0 100% 2921 61% /var
/dev/hd3 1048576 508024 52% 2081 2% /tmp
/dev/fwdump 524288 523536 1% 5 1% /var/adm/ras/platform
/dev/hd1 524288 249000 53% 524 1% /home
/proc - - - - - /proc
/dev/hd10opt 1048576 532384 50% 8599 7% /opt
/dev/lv00 524288 507776 4% 18 1% /var/adm/csd
/dev/fslv00 10485760 4881856 54% 5167 1% /source
/dev/fslv01 94371840 21525676 78% 98843 3% /oradata
2017年9月30日 星期六
YUM EPEL INSTALL
在CentOS 相關系列裡,YUM 是個非常方便的安裝管理套件工具,但本身提供的套件數,畢竟還是有限。有些套件必須要設定額外的YUM REPOSITORIES,例如EPEL套件
一般可以輸入以下指令安裝
yum install epel-release
但你可能會遇到YUM 不接受(或找不到)第三方套件的安裝,你可以輸入以下指令安裝
yum --enablerepo=extras install epel-release
如果這樣還是不行,你也可以根據自己的OS版本進行以下的安裝
rpm -Uvh http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-8.noarch.rpm
其中的 epel-release-7-8.noarch.rpm 7-8就是對應的版號,如果不確定你可以到以下位置確認
http://dl.fedoraproject.org/pub/epel
參考來源
https://wiki.centos.org/zh-tw/AdditionalResources/Repositories
一般可以輸入以下指令安裝
yum install epel-release
但你可能會遇到YUM 不接受(或找不到)第三方套件的安裝,你可以輸入以下指令安裝
yum --enablerepo=extras install epel-release
如果這樣還是不行,你也可以根據自己的OS版本進行以下的安裝
rpm -Uvh http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-8.noarch.rpm
其中的 epel-release-7-8.noarch.rpm 7-8就是對應的版號,如果不確定你可以到以下位置確認
http://dl.fedoraproject.org/pub/epel
參考來源
https://wiki.centos.org/zh-tw/AdditionalResources/Repositories
2017年9月11日 星期一
SSL 憑證證書格式轉換
SSL 憑證格式還挺多種的,如果想要再不同格式接轉換,除了請原廠發憑證公司提供外,也可以透過open ssl 這個軟體來進行。
open ssl 在多數的Linux 環境中,都已經是預設就有安裝的套件了,不需要額外安裝。
以下資訊摘錄自 http://netkiller.sourceforge.net/cryptography/openssl/format.html
PKCS 全稱是 Public-Key Cryptography Standards ,是由 RSA 實驗室與其它安全系統開發商為促進公鑰密碼的發展而制訂的一系列標準,PKCS 目前共發佈過 15 個標準。 常用的有:
PKCS#7 Cryptographic Message Syntax Standard
PKCS#10 Certification Request Standard
PKCS#12 Personal Information Exchange Syntax Standard
X.509是常見通用的證書格式。所有的證書都符合為Public Key Infrastructure (PKI) 制定的 ITU-T X509 國際標準。
PKCS#7 常用的尾碼是: .P7B .P7C .SPC
PKCS#12 常用的尾碼有: .P12 .PFX
X.509 DER 編碼(ASCII)的尾碼是: .DER .CER .CRT
X.509 PAM 編碼(Base64)的尾碼是: .PEM .CER .CRT
.cer/.crt是用於存放證書,它是2進制形式存放的,不含私鑰。
.pem跟crt/cer的區別是它以Ascii來表示。
pfx/p12用於存放個人證書/私鑰,他通常包含保護密碼,2進制方式
p10是證書請求
p7r是CA對證書請求的回覆,只用於導入
p7b以樹狀展示證書鏈(certificate chain),同時也支持單個證書,不含私鑰。
7.6.1. 去除私鑰的密碼
7.6.2. CA證書
7.6.3. 創建CA證書有效期為一年
7.6.4. x509轉換為pfx
7.6.5. PEM格式的ca.key轉換為Microsoft可以識別的pvk格式
7.6.6. PKCS#12 到 PEM 的轉換
7.6.7. 從 PFX 格式檔案中提取私鑰格式檔案 (.key)
7.6.8. 轉換 pem 到到 spc
openssl crl2pkcs7 -nocrl -certfile venus.pem -outform DER -out venus.spc
用 -outform -inform 指定 DER 還是 PAM 格式。例如:
openssl x509 -in Cert.pem -inform PEM -out cert.der -outform DER
7.6.9. PEM 到 PKCS#12 的轉換
openssl pkcs12 -export -in Cert.pem -out Cert.p12 -inkey key.pem
IIS 證書
cd c:\opensslset OPENSSL_CONF=openssl.cnf
openssl pkcs12 -export -out server.pfx -inkey server.key -in server.crt
server.key和server.crt檔案是Apache的證書檔案,生成的server.pfx用於導入IIS
加上中繼憑證
openssl pkcs12 -export -in Cert.pem -out Cert.p12 -inkey key.pem -certfile ssl_chain.crt
7.6.10. How to Convert PFX Certificate to PEM Format for SOAP
$ openssl pkcs12 -in test.pfx -out client.pem
Enter Import Password:
MAC verified OK
Enter PEM pass phrase:
Verifying - Enter PEM pass phrase:
7.6.11. DER檔案(.crt .cer .der)轉為PEM格式檔案
轉換DER檔案(一般尾碼名是.crt .cer .der的檔案)到PEM檔案
openssl x509 -inform der -in certificate.cer -out certificate.pem
轉換PEM檔案到DER檔案
openssl x509 -outform der -in certificate.pem -out certificate.der
open ssl 在多數的Linux 環境中,都已經是預設就有安裝的套件了,不需要額外安裝。
以下資訊摘錄自 http://netkiller.sourceforge.net/cryptography/openssl/format.html
PKCS 全稱是 Public-Key Cryptography Standards ,是由 RSA 實驗室與其它安全系統開發商為促進公鑰密碼的發展而制訂的一系列標準,PKCS 目前共發佈過 15 個標準。 常用的有:
PKCS#7 Cryptographic Message Syntax Standard
PKCS#10 Certification Request Standard
PKCS#12 Personal Information Exchange Syntax Standard
X.509是常見通用的證書格式。所有的證書都符合為Public Key Infrastructure (PKI) 制定的 ITU-T X509 國際標準。
PKCS#7 常用的尾碼是: .P7B .P7C .SPC
PKCS#12 常用的尾碼有: .P12 .PFX
X.509 DER 編碼(ASCII)的尾碼是: .DER .CER .CRT
X.509 PAM 編碼(Base64)的尾碼是: .PEM .CER .CRT
.cer/.crt是用於存放證書,它是2進制形式存放的,不含私鑰。
.pem跟crt/cer的區別是它以Ascii來表示。
pfx/p12用於存放個人證書/私鑰,他通常包含保護密碼,2進制方式
p10是證書請求
p7r是CA對證書請求的回覆,只用於導入
p7b以樹狀展示證書鏈(certificate chain),同時也支持單個證書,不含私鑰。
7.6.1. 去除私鑰的密碼
$ openssl rsa -in neo.key -out nopassword.keyEnter pass phrase for neo.key:writing RSA key
7.6.2. CA證書
用openssl創建CA證書的RSA密鑰(PEM格式):
openssl genrsa -des3 -out ca.key 1024
7.6.3. 創建CA證書有效期為一年
用openssl創建CA證書(PEM格式,假如有效期為一年):
openssl req -new -x509 -days 365 -key ca.key -out ca.crt -config openssl.cnf
openssl是可以生成DER格式的CA證書的,最好用IE將PEM格式的CA證書轉換成DER格式的CA證書。
7.6.4. x509轉換為pfx
openssl pkcs12 -export -out server.pfx -inkey server.key -in server.crt
7.6.5. PEM格式的ca.key轉換為Microsoft可以識別的pvk格式
pvk -in ca.key -out ca.pvk -nocrypt -topvk
7.6.6. PKCS#12 到 PEM 的轉換
openssl pkcs12 -nocerts -nodes -in cert.p12 -out private.pem
驗證
openssl pkcs12 -clcerts -nokeys -in cert.p12 -out cert.pem
7.6.7. 從 PFX 格式檔案中提取私鑰格式檔案 (.key)
openssl pkcs12 -in mycert.pfx -nocerts -nodes -out mycert.key
7.6.8. 轉換 pem 到到 spc
openssl crl2pkcs7 -nocrl -certfile venus.pem -outform DER -out venus.spc
用 -outform -inform 指定 DER 還是 PAM 格式。例如:
openssl x509 -in Cert.pem -inform PEM -out cert.der -outform DER
7.6.9. PEM 到 PKCS#12 的轉換
openssl pkcs12 -export -in Cert.pem -out Cert.p12 -inkey key.pem
IIS 證書
cd c:\opensslset OPENSSL_CONF=openssl.cnf
openssl pkcs12 -export -out server.pfx -inkey server.key -in server.crt
server.key和server.crt檔案是Apache的證書檔案,生成的server.pfx用於導入IIS
加上中繼憑證
openssl pkcs12 -export -in Cert.pem -out Cert.p12 -inkey key.pem -certfile ssl_chain.crt
7.6.10. How to Convert PFX Certificate to PEM Format for SOAP
$ openssl pkcs12 -in test.pfx -out client.pem
Enter Import Password:
MAC verified OK
Enter PEM pass phrase:
Verifying - Enter PEM pass phrase:
7.6.11. DER檔案(.crt .cer .der)轉為PEM格式檔案
轉換DER檔案(一般尾碼名是.crt .cer .der的檔案)到PEM檔案
openssl x509 -inform der -in certificate.cer -out certificate.pem
轉換PEM檔案到DER檔案
openssl x509 -outform der -in certificate.pem -out certificate.der
2017年3月27日 星期一
用 $(()) 做運算出現 value too great for base (error token is "08") 錯誤訊息
最近整理了一下檢查Linux伺服器的程序Script,有些服務是晚上00:00 ~08:00是不執行的,這樣一來,若每隔10分鐘就檢查一次的話,晚上就會有一堆報錯的郵件通知,這樣也不好,就跟狼來了是一樣情況。
為了避開該時段,因此寫了一段SCRIPT
其中一段是為了檢查現在的時間
TimeHour=`date +%H` #現在的小時 01-24
if ( [[ ${TimeHour} -gt ${TSH} ]] && [[ ${TimeHour} -lt ${TEH} ]] ) ; then
結果
[[ 15 -gt 08 ]]
錯誤訊息
[[: 08: value too great for base (error token is "08")
上網查了一下
http://blog.xuite.net/jyoutw/xtech/30862650
http://stackoverflow.com/questions/24777597/shell-script-error-value-too-great-for-base-error-token-is-08#comment38451327_24777667
原來是因為Linux Script 把 08、09 當做特殊運算符號了
因此要把檢查的那一段改成
if ( [[ ${TimeHour#0} -gt ${TSH#0} ]] && [[ ${TimeHour#0} -lt ${TEH#0} ]] ) ; then
就可以囉
為了避開該時段,因此寫了一段SCRIPT
其中一段是為了檢查現在的時間
TimeHour=`date +%H` #現在的小時 01-24
TimeMin=`date +%M` #現在的分鐘 01-59
setTimeStart='08:00'
setTimeEnd='24:00'
TSH=`echo $setTimeStart|awk -F: '{print $1}'` #取出08:00 的08
TSM=`echo $setTimeStart|awk -F: '{print $2}'` #取出08:00 的00
TEH=`echo $setTimeEnd|awk -F: '{print $1}'` #取出24:00的24
TEM=`echo $setTimeEnd|awk -F: '{print $2'}` #取出24:00的00
結果
[[ 15 -gt 08 ]]
錯誤訊息
[[: 08: value too great for base (error token is "08")
上網查了一下
http://blog.xuite.net/jyoutw/xtech/30862650
http://stackoverflow.com/questions/24777597/shell-script-error-value-too-great-for-base-error-token-is-08#comment38451327_24777667
原來是因為Linux Script 把 08、09 當做特殊運算符號了
因此要把檢查的那一段改成
if ( [[ ${TimeHour#0} -gt ${TSH#0} ]] && [[ ${TimeHour#0} -lt ${TEH#0} ]] ) ; then
就可以囉
2017年3月24日 星期五
win 10 輸入法問題 預設已改為英數 開機時卻不是英數
參考來源:
https://answers.microsoft.com/zh-hant/windows/forum/windows_10-ime/win-10/198515cc-3414-4815-b9cb-7844b96981da
試試控制台的語言裡的進階設定
把切換輸入法的 " 讓我為每個應用程式視窗設定不同的輸入法 " 勾起來
然後再把預設輸入模式也改成 "英數模式"
2016年12月19日 星期一
調整 XFS 格式的 Logical Volume 大小
以下文章摘自http://jamyy.us.to/blog/2015/09/7673.html
調整 XFS 格式的 Logical Volume 大小
by Jamyy on 九月.04, 2015, under Linux
由於 XFS 只能擴大不能縮小, 利用 xfsdump / xfsrestore 工具, 在必須縮小 Logical Volume 的情況下, 得以備份、還原資料。
操作環境: CentOS 7, 安裝時採用 Automatically configure partitioning (XFS + LVM)
處理前環境
# pvs
PV VG Fmt Attr PSize PFree
/dev/sda2 centos lvm2 a-- 99.51g 64.00m# vgs
VG #PV #LV #SN Attr VSize VFree
centos 1 3 0 wz--n- 99.51g 64.00m# lvs
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert
home centos -wi-ao---- 45.57g
root centos -wi-ao---- 50.00g
swap centos -wi-ao---- 3.88g
將 /home 縮減為 5GB, 剩下都給 / (root)
安裝 xfsdump 套件
# yum -y install xfsdump備份 /home
# xfsdump -f /home.xfsdump /homeplease enter label for this dump session (timeout in 300 sec)
-> home
please enter label for media in drive 0 (timeout in 300 sec)
-> home卸載 /home
# umount /home將 /home 的 Logical Volume 縮減為 5GB
# lvreduce -L 5G /dev/mapper/centos-homeDo you really want to reduce home? [y/n]: y將騰出的空間都給 / (root)
# lvextend -l +100%FREE /dev/centos/root延展 xfs 空間
# xfs_growfs /dev/centos/root
恢復 /home 內容
格式化 /home 的 Logical Volume
# mkfs.xfs -f /dev/mapper/centos-home掛載 /home
# mount /home將備份資料寫回 /home
# xfsrestore -f /home.xfsdump /home
處理後環境
# pvs
PV VG Fmt Attr PSize PFree
/dev/sda2 centos lvm2 a-- 99.51g 0# vgs
VG #PV #LV #SN Attr VSize VFree
centos 1 3 0 wz--n- 99.51g 0# lvs
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert
home centos -wi-ao---- 5.00g
root centos -wi-ao---- 90.63g
swap centos -wi-ao---- 3.88g
標籤:
放大,
縮小,
Centos 7.x,
LV,
LVM,
VG,
XFS,
xfs_growfs,
xfsdump,
xfsrestore
訂閱:
文章 (Atom)