shell和SQL

來源:互聯網
上載者:User

標籤:shell

 


游標移動指令
? 對應方向鍵移動
   h   左移一字元   k  上移一行   j  下移一行   l 右移一字元
 
? 按行單位移動  
    0  移到行首         $  移到行尾   
     nG  移到第n行     G 移到最後一行
? 按頁單位移動
    ^ f  下卷一屏      ^ b  上卷一屏
     ^ d  下卷半屏      ^ u  上卷半屏

--將記錄檔catlina.out中最後100行資料 取出
tail -100 catlina.out >> 20141214log.txt



--檢測是否有用
head -10  20141214log.txt



--在hwcsp6檔案夾下,將檔案hwcsp6打包複製為hwcsp6_201500807.tar

tar -cvzf hwcsp6_201500807.tar hwcsp6

tar -xvzf hwcsp6_201500807.tar

--從linux到ftp
ftp 地址

cd 所要儲存的地址

bin --切換到2進位

put

--從ftp到linux
ftp 地址

cd 檔案所在的地址

bin --切換到2進位


get 當前檔案夾下


--查看當前檔案夾下各個檔案的大小
linux:du -sh *
aix:du -sg *

--查看盤符使用方式
df -h  G為單位
df -m  M為單位


文檔許可權命令
--可執行許可權,即 x 許可權
chmod +x script.sh

--改變檔案群組許可權 要切換到當前檔案許可權的使用者下

chgrp(change group 縮寫) -R (該參數表示,被改檔案夾下的所有檔案和檔案夾群組同時被改)group   file


--改變檔案使用者權限

chown(change owner 縮寫) -R (該參數表示,被改檔案夾下的所有檔案和檔案夾群組同時被改)owner   file


--也可以使用chown改變使用者和群組的許可權

chown  -R user:grop file 變更檔的使用者和群組的許可權

 tar -cvf csp_20151008_bak.tar csp
 
 --將檔案夾從本地傳入到linux
 先壓縮成zip格式,放在ftp上,通過get得到zip檔案
 再使用unzip -o解壓
 unzip -o csp.zip
 
--cp命令
cp [參數] 當前檔案 需要複製的檔案
r:用於複製檔案夾
P:連同原檔案屬性一起複製過去,不是預設複製
i:若被複製檔案已經存在時,在覆蓋時會先問是否需要繼續複製

mv  

rm


--tar
打包某個檔案夾下所有檔案(不包括該檔案夾目錄)
1、先進入這個檔案夾
2、在這個檔案夾下執行:tar -czvf filename.tar.gz *
3、cd到需要解壓的檔案夾下執行:tar -xzvf filename.tar.gz




cd



ps -ef | grep java

---------------------------



磁碟空間清理
磁碟空間清理(理想化保持75%)
1.10.70.211.68 etl/nIj2Sy5,
一般清理WORK01和WORK02
1.WORK01:zjjavg09/work01/vgopbk/vgopbass/data/bass/mode
2.WORK02:  zjjavg09/work02/vgopbk/vgopzj/bossop

2.10.70.211.76 etl/Sp7%ox(j
一般清理WORK01和WORK02,清理原則
例如:WORK01:zjjavg03/work01/vgopbk/vgopckm/all_content/read  
空間多的可以酌情清理。
例如:WORK02:zjjavg03/work02/vgopbk/vgopwap/data/data_bak 都可以清理
--查看當前檔案夾下各個檔案的大小
linux:du -sh *
aix:du -sg *

--查看盤符使用方式
df -h  G為單位
df -m  M為單位




資料庫資料表空間清理步驟:
刪除分區的原則是:
日保留2+1月資料
特殊:閱讀保留3+1月,TB_DW_WAP_CLIENT_DAY保留最近一星期
月保留6+1月資料

TB_DW_ORDER_INFO_BASS_579_D
TB_DW_ORDER_INFO_ONE_579_D
這類表可以保留少一點的資料,最少10天



第一步:查出空間利用率
SELECT TABLESPACE_NAME "資料表空間",    
To_char(Round(BYTES / 1024, 2), ‘99990.00‘)    
|| ‘G‘ "實有",    
To_char(Round(FREE / 1024, 2), ‘99990.00‘)    
|| ‘G‘ "現有",    
To_char(Round(( BYTES - FREE ) / 1024, 2), ‘99990.00‘)    
|| ‘G‘ "使用",    
To_char(Round(10000 * USED / BYTES) / 100, ‘99990.00‘)    
|| ‘%‘ "比例"    
FROM (SELECT A.TABLESPACE_NAME TABLESPACE_NAME,    
Floor(A.BYTES / ( 1024 * 1024 )) BYTES,    
Floor(B.FREE / ( 1024 * 1024 )) FREE,    
Floor(( A.BYTES - B.FREE ) / ( 1024 * 1024 )) USED    
FROM (SELECT TABLESPACE_NAME TABLESPACE_NAME,    
Sum(BYTES) BYTES
FROM DBA_DATA_FILES
GROUP BY TABLESPACE_NAME) A,
(SELECT TABLESPACE_NAME TABLESPACE_NAME,    
Sum(BYTES) FREE
FROM DBA_FREE_SPACE
GROUP BY TABLESPACE_NAME) B
WHERE A.TABLESPACE_NAME = B.TABLESPACE_NAME)    
/*WHERE TABLESPACE_NAME LIKE ‘UNDO%‘ --這一句用於指定資料表空間名稱*/    
ORDER BY Floor(10000 * USED / BYTES) DESC;    


第二步:找出佔用空間的大表
select * from (select t.segment_name, sum(t.bytes) / 1024 / 1024/ 1024 as tab_size    
from user_segments t    
group by t.segment_name    
)    
where tab_size>=50    
order by tab_size desc ;    

第三步:刪除分區
----------------------------------------------------------
select ‘alter table ‘ || t.segment_name || ‘ drop partition ‘ ||    
t.partition_name || ‘;‘    
from user_segments t    
where t.segment_name = upper(‘TB_MK_RING_DAY_JF‘);


--附加語句,重要!!!
select distinct t.segment_name,
                ‘alter table ‘ || t.segment_name || ‘ drop partition ‘ ||
                substr(t.partition_name, 1, 13) || ‘;‘,
                t1.tab_size,
                substr(t.partition_name, 6, 14)
  from user_segments t,
       (select segment_name, tab_size
          from (select t.segment_name,
                       sum(t.bytes) / 1024 / 1024 / 1024 as tab_size
                  from user_segments t
                 group by t.segment_name)
         where tab_size >= 50
         order by tab_size desc) t1
 where t.segment_name = t1.segment_name
   and t.partition_name LIKE ‘%PART_201602%‘
   and t.partition_name <> ‘PART_201602‘
  -- and to_number(substr(t.partition_name, 6, 14))<‘20160206‘
  and substr(t.partition_name, 6, 14)<‘20160211‘
  and t.segment_name like ‘TB_%‘
--and t.partition_name = ‘PART_201508‘
-- group by substr(t.partition_name, 1, 13)
 order by t1.tab_size desc


本文出自 “司馬囧” 部落格,謝絕轉載!

shell和SQL

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.