码迷,mamicode.com
首页 > 编程语言 > 详细

一个java工程师的前6年工作部分技术积累(二)

时间:2016-08-11 23:16:54      阅读:445      评论:0      收藏:0      [点我收藏+]

标签:技术   java工程师   

五、  Oracle

1、创建表

CREATE TABLE BD_ASSESS_PERIOD_TYPE_T

(

          PERIOD_TYPE  VARCHAR2(16 BYTE)                NOT NULL,

          PERIOD_NAME  VARCHAR2(16 BYTE)                NOT NULL

)

TABLESPACE TS_TAB_BASE03

PCTUSED    40

PCTFREE    10

INITRANS   1

MAXTRANS   255

STORAGE    (

            INITIAL          64K

            MINEXTENTS       1

            MAXEXTENTS       2147483645

            PCTINCREASE      0

            FREELISTS        1

            FREELIST GROUPS  1

            BUFFER_POOL      DEFAULT

           )

LOGGING

NOCACHE

NOPARALLEL;

COMMENT ON COLUMN BD_ASSESS_PERIOD_T.PERIOD_TYPE IS ‘字段名 ‘;

2、创建序列

CREATE SEQUENCE CRM_OWNER_USER.BD_EVALUATE_TEMPLATE_S  START WITH 161

  MAXVALUE 9999999999

  MINVALUE 1

  NOCYCLE

  CACHE 20

  NOORDER;

3、创建同义词

CREATE PUBLIC SYNONYM BD_ASSESS_PERIOD_TYPE_T FOR BD_ASSESS_PERIOD_TYPE_T;

4、给用户赋权

GRANT DELETE, INSERT, SELECT, UPDATE ON  BD_ASSESS_PERIOD_TYPE_T TO CRM11;

用户1   用户2

bd_some_t  用户1

数据库2想用  

1、create public synonym   bd_some_t for 用户1.bd_some_t    在用户2下做

2、grant all on   bd_some_t to 用户2           在用户1下做

5、获得需要的格式的时间

select to_char(sysdate,‘yyyy-mm-dd hh24:mi:ss‘) from dual

6、按照树形结构查询数据

1、SELECT ID

  From a

 START WITH ID =?CONNECT BY PARENT_ID = PRIOR ID

2、select a.title,b.sid

from main a,test b

where b.sid in  (select c.sid from test c START with c.id =a.id connect by c.id= prior c.sid  )

 

7、按照某个数据。根据某种规则查询数据

select rank() over(order by a desc),b

   from table

   按照字段a,以倒数的数序查询

8、查询在a表中而不在b表中数据的方法

select a.name form table1 a

   where not exists(select * from table2 b where a.name = b.name )

9、按照某个字段大小排序,不能强转城数字行,可能会出现错误

    select f_prod_code from a where  ORDER BY LPAD(f_prod_code,12,‘!‘)

 12是这个字段的长度,因为‘!‘是可见字符中ASCII最小的。

10、       获得数据,以小数形式显示

Select TO_CHAR(123.0233,‘FM9999990.0099‘) FROM DUAL

FM :除空格  

9999990.0099:允许小数点左边最大正数为7位,小数点右边最少2位,最多4位,且在第5位进行四舍五入

11、       查询俩表中,有个表没数据

    SELECT * FROM prm_part_info_base_t a, prm_part_cont_user_t b

 WHERE a.f_part_id = b.f_part_id(+)

 AND (b.f_cont_user_type = ‘3‘ OR b.f_cont_user_type IS NULL)

12、       查询ab在name中的位置

    instr(name,‘ab‘)

13、       查联合使用左链接和右链接

SELECT NVL (tl1.typedesc, tl2.typedesc) typedesc, tl2.sum_user l2sumuser,

       tl1.sum_user l1sumuser, ‘img‘ img_sum_user, tl2.sum_fee l2sumfee,

       tl1.sum_fee l1sumfee, ‘img‘ img_sum_fee, 0 l2arpu, 0 l1arpu,

       ‘img‘ img_arpu, 0 l2percent, 0 l1percent, ‘img‘ img_percent,

       tl2.cbself

  FROM (SELECT   typedesc, NVL (SUM (count_user), 0) sum_user,

                 NVL (SUM (sum_rec), 0) sum_fee, TO_CHAR (bself) cbself

            FROM aav_rec_comp a, aav_code_agenttype b

           WHERE a.agenttypeid = b.typeid(+) AND ym = ‘200607‘

                 AND (areaid = ‘188‘)

        GROUP BY typedesc, bself) tl2 left OUTER JOIN (SELECT   typedesc,

        NVL(SUM(count_user),0) sum_user,

        NVL(SUM(sum_rec),0) sum_fee,

        TO_CHAR(bself) cbself

        FROM aav_rec_comp a, aav_code_agenttype b

        WHERE a.agenttypeid =b.typeid(+)

        AND ym = ‘200608‘ AND (areaid =‘188‘) GROUP BY typedesc,bself) tl1 ON tl1.typedesc = tl2.typedesc

UNION

 

 

SELECT NVL (tl2.typedesc, tl1.typedesc) typedesc, tl2.sum_user l2sumuser,

       tl1.sum_user l1sumuser, ‘img‘ img_sum_user, tl2.sum_fee l2sumfee,

       tl1.sum_fee l1sumfee, ‘img‘ img_sum_fee, 0 l2arpu, 0 l1arpu,

       ‘img‘ img_arpu, 0 l2percent, 0 l1percent, ‘img‘ img_percent,

       tl2.cbself

 FROM (SELECT   typedesc, NVL (SUM (count_user), 0) sum_user,

                 NVL (SUM (sum_rec), 0) sum_fee, TO_CHAR (bself) cbself

            FROM aav_rec_comp a, aav_code_agenttype b

           WHERE a.agenttypeid = b.typeid(+) AND ym = ‘200607‘

                 AND (areaid = ‘188‘)

        GROUP BY typedesc, bself) tl2 RIGHT OUTER JOIN (SELECT   typedesc,

        NVL(SUM(count_user),0)sum_user,

        NVL(SUM(sum_rec),0) sum_fee,TO_CHAR(bself) cbself

        FROM aav_rec_comp a,aav_code_agenttype b

       WHERE a.agenttypeid =b.typeid(+)

        AND ym = ‘200608‘

        AND (areaid =

       ‘188‘)       

       GROUP BY typedesc,bself) tl1 ON tl1.typedesc =tl2.typedesc

14、       运行存储过程

DECLARE

   m varchar2(6);

BEGIN

  m:=‘200703‘;

  CHANNEL.P_Aav_Detail_Comm_Data(m);

  COMMIT;

END;

15、       case语句使用

SELECT   (CASE

             WHEN (SELECT ‘1‘

                     FROM aav_info_agent

                    WHERE agentid = a.agentid) = ‘1‘

                THEN (SELECT agent_name

                        FROM aav_info_agent

                       WHERE agentid = a.agentid)

             ELSE (SELECT office_name

                     FROM info_office

                    WHERE office_id = a.agentid)

          END

         ) aname0,

         agentid aagentid, SUM (adev) sum_adev, SUM (alost) sum_alost,

         DECODE (SUM (alost),

                 0, 0,

                 SUM (lostmonths) / SUM (alost)

                ) avglostmonths

    FROM aav_devlost_q_details a

   WHERE (a.areaid = ‘188‘)

     AND (a.nettypeid = ‘1‘)

     AND (a.ym >= ‘200307‘)

     AND (a.ym <= ‘200707‘)

GROUP BY agentid

16、       dblink

CREATE PUBLIC SYNONYM bf_gsm_call_t for bf_gsm_call_t@bill2indb     -----

dblink

链接的意思是,在某数据库下建个dblink 某个用户可以访问这个dblink ,其他数据库可能通过这个dblink使用这个用户访问这个用户可以访问的表

17、       数据字典,查询数据库里村不存在制定表

select * from all_objects where object_name=upper(‘bf_cdma_call_t‘)

18、       数据库读写文件

set feedback off

set head off

spool d:\abc.sql

 

spool off;

spool d:\abc.sql;

set feedback off

set head off

33333

spool off;

19、       数据库特殊查询

/*不同分组*/

select o.region_id  ,o.cust_nbr,sum(o.tot_sales) tot_sales,sum(sum(o.tot_sales)) over

(partition by o.region_id) region_sales

from oreder o

where o.year = ‘2001‘ group by o.region_id,o.cust_nbr

 

 

select DEALER_ID,PROGRAM_ID,EVALU_ITEM,sum(EVALU_SCORE),sum(sum(EVALU_SCORE)) over

(partition by DEALER_ID,PROGRAM_ID) region_sales

from BD_PROGRAM_EVALUATE_T

group by  DEALER_ID,PROGRAM_ID,EVALU_ITEM

 

/*排序*/

 

select region_id,cust_nbr,sum(tot_sales) cust_sales,

rank() over(order by sum(tot_sales) desc) sales_rank,

dense_rank() over(order by sum(tot_sales) desc )  sales_dense_rank,

row_number() over(order by sum(tot_sales) desc )  sales_number,

from orders

where year=‘2001‘

group by region_id,cust_nbr

order by 6;    ------------------按照结果集的第六个字段值排序

 

/*按地区和用户统计用户的收入和用户在自己地区内的牌民*/

 

select region_id,cust_nbr,sum(tot_sales) cust_sales,

rank() over(partition bu region_id order by sum(tot_sales) desc) sales_rank,

dense_rank() over( partition bu region_id order by sum(tot_sales) desc )  sales_dense_rank,

row_number() over(partition bu region_id order by sum(tot_sales) desc )  sales_number,

from orders

where year=‘2001‘

group by region_id,cust_nbr

order by 1,6;

 

/*将null显示的位置*/

select region_id,cust_nbr,sum(tot_sales) cust_sales,

rank() over(order by sum(tot_sales) desc null last) sales_rank

from orders

where year=‘2001‘

group by region_id,cust_nbr

 

/*不知道干什么用的*/

select min(region_id) keep (dense_rank first order by sum(tot_sales) desc))  best_region,

 min(region_id) keep (dense_rank last order by sum(tot_sales) desc)) worst_region

from orders

where year = ‘2001‘

group by region_id

20、       导入、导出数据

方案1

一、带分区的

例1、exp userid=crm_owner_user/bss_crm_0404 file=./BD_MOBILE_SELECT_T.dmp buffer=2048000 tables = BD_MOBILE_SELECT_T:MOBILE_SEL_PART_180

log=./BD_MOBILE_SELECT_T.log feedback = 10000 indexes = n grants=n  direct=y&

 

例2、exp userid=crm_owner_user/bss_crm_0404 file=./BD_MOBILE_SELECT_T.dmp buffer=2048000 tables = BD_MOBILE_SELECT_T:MOBILE_SEL_PART_180

log=./BD_MOBILE_SELECT_T.log feedback = 10000 indexes = n grants=n  direct=y &

 

例3、exp userid=crm_owner_user/bss_crm_0404 file=./BD_SELECT_T.dmp buffer=2048000 tables = BD_SELECT_T:PART_180 log=./BD_SELECT_T.log feedback

= 10000 indexes = n grants=n  direct=y &

 

例4、exp userid=crm_owner_user/bss_crm_0404 file=./BD_SELECT_HIS_T.dmp buffer=2048000 tables = BD_SELECT_HIS_T:PART_180

log=./BD_SELECT_HIS_T.log feedback = 10000 indexes = n grants=n  direct=y &

 

导入:

imp channel/bss_crm_xxp5@crm full=n file=D:\table\info_office.dmp log=D:\table\import.log  buffer=20480000 FROMUSER=channel TOUSER=channel IGNORE=y COMMIT=y FEEDBACK=10000 TABLES=info_office

方案2、如果俩个数据库之间可以通信(在命令行执行)       : sqlplus

 

copy from crm_owner_user/xxx4@newhbcrm to channel/xxxx@hbbus insert  hh  USING SELECT * FROM hh ;

例1、copy from crm_owner_user/bss_crm_xxp1@ZBHBCRM to scott/tiger@tong insert bd_dealer_main_t using select * from bd_dealer_main_t where

rownum<2  

方案3、将表数据先道道文本中、在执行.bat文件                    

例子在  文件  导数据方法3中

.bat文件内容

@echo off

sqlplus channel/bss_crm_xxp5@newbus @work_commision_list_ext.sql

@echo on

21、       Sqlplus连接数据库

sqlplus  username/password@servicename

22、       建立外键

ALTER TABLE PRM_PART_ADDONS_INFO_T ADD (

  CONSTRAINT PART_INFO_BASE_FK3 FOREIGN KEY (F_PART_STATE, F_PART_ID)

REFERENCES PRM_PART_INFO_BASE_T (F_PART_STATE,F_PART_ID));

23、       创建表备份

create table bd_select_t_bank1227 as select * from bd_select_t where 1=2

24、       删除一个表中相同数据

delete from bd_tongliang_t

where select_no in (select select_no from bd_tongliang_t group by select_no having count(select_no)>1)

and rowid not in (select min(rowid) from bd_tongliang_t group by select_no having count(select_no)>1)

25、       编写存储过程

CREATE OR REPLACE procedure bbb

as

CURSOR get_info IS

        select register_number,bus_str_code,count(*) from bb_other_should_pickup_t

        where pickup_status in (44,0) and bus_str_code in (31,47)

        group by register_number,bus_str_code

        having count(*) >1;

BEGIN

        FOR rec IN get_info LOOP

        DELETE bb_other_should_pickup_t

        WHERE register_number = rec.register_number AND ROWNUM=1;

        COMMIT;

        END LOOP;

        update bb_other_should_pickup_t set pickup_status=2 where pickup_status=44;

        commit;

END;

/

26、       动态sql

vs_sql :=

  ‘insert into bb_165_should_pickup_t(‘ ||

 ‘City_code,Accept_city,Register_number,Apply_event,Pickup_status,‘ ||

‘if_emergency,Source_kind,Make_date,Pre_pay_fee,Svc_id,Service_id,node_id,bms_svc_id)‘ ||

  ‘values(‘ ||

 ‘:City_code,:Accept_city,:Register_number,:Apply_event,0,‘ ||

 ‘0,2,:Make_date,:Pre_pay_fee,:Svc_id,:Service_id,:node_id,:bsm_svc_id)‘;

 execute immediate vs_sql using vs_city_code,is_accept_city,vs_reg_number,in_apply_event,

 vd_date,vn_pay_fee,vs_svc_id,is_service_id,vs_node_id,vn_svc_id;

27、       数据字典

1:  数据字典记录了数据库的系统信息,是只读表和试图的集合,数据字典的所有者为sys用户,并且存放在system表空间中,  

        数据字典基表存放基本信息,普通用户不能访问,只能访问数据字典试图取得系统信息,数据字典包含三种类型:  

        USER_XXX:   所有数据库对象  

        ALL_XXX:    当前用户可以存放的所有对象  

        DBA_XXX:    当前用户所拥有的对象  

2:数据字典内容  

    A:对象定义  

        当执行create命令创建对象时,Oracle会将对象存放到数据字典中,可以使用DBMS_METADATA可以获取对象定义语句,:  

            SQL>SET LONG 4000 

            SQL>SELECT dbms_metadata.get_ddl(‘TABLE‘,‘EMP‘) ddl FROM DUAL;  

    B:对象占用的空间  

        建立表,索引和族时,Oralce会给表,索引和族分配相应的空间,以存放这些对象的数据,通过数据字典,可以取得所占用的空间  

        查询表占用的空间,可以查看其同名段的大小,如下:  

            SQL> SELECT bytes FROM user_segments WHERE segment_name=‘EMP‘;  

        如果要查看剩余空间和已用空间时,要做一下步骤:  

            SQL> analyze table emp compute statistics;  

            SQL> select empty_blocks,blocks from user_tables where table_name=‘EMP‘;  

    C: 列信息  

            SQL> select from user_tab_columns where table_name="DEPT";  

    D: 用户名,权限和角色  

            DBA_USERS: 所有数据库用户的详细信息  

            DBA_SYS_PRIVS: 用户或角色所具有的系统权限  

            DBA_TAB_PRIV: 显示用户或角色所具有的对象权限  

            DBA_COL_PRIVS: 用户或角色所具有的列权限  

            DBA_ROLE_PRIVS: 显示用户或角色具有的其他的角色。  

3:常用的数据字典:  

     1 DICT: 显示当前用户可以访问的所有的数据字典试图  

     2 DICT_COLUMNS: 用户显示数据字典视图每个列的作用,  

            SQL> SELECT column_name,comments FROM dict_columns WHERE table_name=‘DICT‘;  

     3 DUAL: 用于取得函数的返回值  

            SQL> SELECT user FROM dual;  

     4 GLOBAL_NAME: 用于显示当前数据库的全名  

            SQL> SELECT * FROM GLOBAL_NAME  

     5 IND:用于显示当前用于所拥有的索引  

     6 OBJ: 用于显示当前用户所拥有的所有对象  

     7 SEG:用于显示当前用户所拥有的序列  

     8 SYN:用于显示当前用户所拥有的同义词和同义词对应的数据库对象名  

     9 TAB:用于显示当前用户所拥有的表,视图和序列  

 

4:动态性能试图记录当前例程的活动信息,启动时从SGA和控制文件中取得的,例程停止时,删除这些表  

     数据字典时从数据文件中获取的  

       

5:常用的动态性能视图表:  

        1:V$FIXED_TABLE - 列出所有可用的动态性能视图和动态性能表  

        2:V$INSTANCE - 取得当前例程的详细信息  

        3:V$SGA - 用于显示SGA主要组成部分  

        4:V$SGAINFO - 取得SGA更详细的信息  

        5:V$PARAMETER - 取得初始化参数的详细信息  

        6:V$VERSION - 取得ORACLE版本的详细信息  

        7:V$OPTION - 该动态性能视图用于显示已经安装的Oralce选项  

        8:V$SESSION - 用于显示会话的详细信息  

        9:V$PROCESS - 显示Oracel所有进程的信息(包括后台进程和服务器进程)  

        10 V$BGPROCESS - 用于显示后台进程的详细信息  

        11 V$DATABASE - 用于显示当前数据的详细信息  

        12 V$CONTROLFILE - 显示所有控制文件的信息  

        13 V$DATAFILE - 数据文件的详细信息  

        14 V$DBFILE - 显示数据文件编号及名称  

        15 V$LOGFILE - 用于显示重做日志成员的信息  

        16 V$LOG - 显示日志组的详细信息  

        17 V$THEAD - 取得重做线程的详细信息  

        18 V$LOCK - 用于显示锁的信息,通过与V$SESSION进行连接查询,可以显示占有锁的会话,以及等待锁的会话  

                SQL>select a.username,a.mechine,b.lmode,b.request from v$session a,v$lock b   

                        where a.sid=b.sid and a.type=‘USER‘;  

        19 V$LOCKED_OBJECT 显示被加锁的数据库对象,通过与DBA_OBJECT进行连接查询,可以显示具体的对象名及执行加锁操作的  

             ORACLE用户名  

                SQL> select a.oracle_username,b.owner||‘.‘||b.object_name object  

                        from V$LOCKED_OBJECT a,DBA_OBJECT b  

                        where a.object_id = b.object_id  

        20 V$TABLESPACE - 显示表空间的信息  

        21 V$TEMPFILE - 显示数据库所包含的临时文件

28、       数据库%匹配

select * from  tongliang  where DATA_INFO LIKE   ‘%a/%%‘   ESCAPE   ‘/‘  

29、       数据库char定义

       如果数据库字段定义为char(4)型,插入的值一定要是4个字节,否则在使用此字段查询的时候会出现匹配问题。

30、        oracle索引原理

      建立索引就是对索引字段进行排序。排序后的数据可以极大地加快查询和搜索速度。

31、       启动数据库

Sqlplus /nolog

Conn / as sysdba

Startup

32、       启动监听器

Lsnrctl start

六、  框架

1、struts自带的用来在tomcat启动时候动态加载文件内容的标签

<plug-in className="com.neusoft.crm.channel.common.InitAppName" />

2、改上下文根

1、propertos/myeclipse/web

2、D:\workspace\NGBSS_PRM1.0_web_dev\NGBSS_PRM1.0\NGBSS_PRM1.0_Web\web_src\tdframework\EAPDomain\unieap\js\Globals.js

3 D:\workspace\NGBSS_PRM1.0_web_dev\NGBSS_PRM1.0\NGBSS_PRM1.0_Web\web_src\tdframework\EAPDomain\WEB-INF\conf\unieap\EAPConfig.xml

3、使用td框架,添加业务处理后当完成出现以下特殊需求时候报“connection is closed”

    (1)、使用JdbcHandler 操作数据库

   (2)、对excel做操作this.wwbook = Workbook.createWorkbook(outstream, this.rwbook,new WorkbookSettings());

        或是处理i/o流

   (3)、处理i/o流后又进行数据库操作(不论是否用JdbcHandler)

4、处理excel大对象过大时候,出现 Exception in thread "Thread-7" java.lang.OutOfMemoryError: Java heap space 异常

   在以下两种情况下没有出现:

   (1)websphere下

   (2)tomcat独立启动

5、tomcat配置文件

<Context docBase="\epm" path="/epm">

docbase  

(1)、webapps 下的相对路径

(2)、工程文件的绝对路径

workDir   存放jsp编译后的class文件

path

(1)、工程的上下文根

(2)、配置文件名称

 <application name="epm">

        <config>/WEB-INF/conf/epm/epm_config_struts.xml</config>

        <title>home</title>

        <started>true</started>

        <welcome>/page/index.jsp</welcome>

    </application>

七、  发布服务器配置

1、将oracle文件oracle\ora92\jdbc\lib下的classes12.jar,添加到tomcat下的common\lib

2、乱码问题

(1)         Tomcat

文件路径:Tomcat 5.0\conf\server.xml

解决方案:红色为添加部分

  <Connectorport="8082"maxThreads="150"minSpareThreads="25"maxSpareThreads="75"

enableLookups="false"redirectPort="8443"acceptCount="100"debug="0"connectionTimeout="20000"disableUploadTimeout="true" URIEncoding=‘GBK‘/>

(2)         Websphere

服务器”-->应用程序服务器,找到自己应用使用的服务器。

服务器基础结构”,展开其下的“Java 和进程管理”,然后进入“进程定义”。

 “其它属性”-->“Java 虚拟机”:

 “Java 虚拟机”通用 JVM 参数设置为:-Dfile.encoding=GBK

 

3、打jar包

D:\>jar cvf popedom.war -C e:\popedomoldwar\ .

用法:jar {ctxu}[vfm0Mi] [jar-文件] [manifest-文件] [-C 目录] 文件名 ...

选项:

    -c  创建新的存档

    -t  列出存档内容的列表

    -x  展开存档中的命名的(或所有的〕文件

    -u  更新已存在的存档

    -v  生成详细输出到标准输出上

    -f  指定存档文件名

    -m  包含来自标明文件的标明信息

    -0  只存储方式;未用ZIP压缩格式

    -M  不产生所有项的清单(manifest〕文件

    -i  为指定的jar文件产生索引信息

    -C  改变到指定的目录,并且包含下列文件:

如果一个文件名是一个目录,它将被递归处理。

清单(manifest〕文件名和存档文件名都需要被指定,按‘m‘ 和 ‘f‘标志指定的相同顺序。

示例1:将两个class文件存档到一个名为 ‘classes.jar‘ 的存档文件中:

       jar cvf classes.jar Foo.class Bar.class

示例2:用一个存在的清单(manifest)文件 ‘mymanifest‘ 将 foo/ 目录下的所有

           文件存档到一个名为 ‘classes.jar‘ 的存档文件中:

       jar cvfm classes.jar mymanifest -C foo/

4、登录websphere配置和地址

端口:9060

应用:admin

5、配置websphere应用

1、发布应用:应用程序-à安装新的应用程序(使用二进制配置)。

      选择“集群和服务器”点击应用。

选择应用,点击下一步。

保存到主配置。

2、环境变量设置:选择ORACLE_JDBC_DRIVER_PATH

      添加D:\oracle\ora92\jdbc\lib.

    添加数据源。

6、查看websphere日志路径

D:\WebSphere\AppServer\profiles\AppSrv01\logs\server1

7、发布应用程序路径

D:\WebSphere\AppServer\profiles\AppSrv01\installedApps\tongliangNode01Cell

8、Oracle.sql.BLOB与sql.Blob 之间不能转化

直连情况可以强转,jndi不能。

Tomcat 下配置文件添加

<parameter>
      <name>factory</name>
      <value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
</parameter>

八、  网络

1、添加网关

route add -p 200.2.200.0 mask 255.255.255.0 10.195.129.1

蓝色:某个ip段

红色:走哪个网关

九、  linux操作系统命令

1、ls   看当前目录文件    crontab -l   查看所有shell

2、ll    查看系统文件大小

3、cd  看文件夹内容

4、cat   看文件内容

5、telnet  数据库

6、vi  编辑文本       i  开始编辑

7、esc   切换编辑状态和命令状态

8、nohup  ./文件名.sh ‘第一个参数’‘第二个参数’&

9、chmod 777 saliang.sh    问某个文件赋权

10、       以下是shell脚本的编写

sqlplus channel/bss_crm_xxp5@newbus <<EOF>> liang2.log

exec p_imp_analysis($1);

exit;

EOF;

11、       wq保存 

12、       prompt 提示符

13、       查看日志方法,登录了以后

1.cdlog

2.tail -f SystemOut.log

3.control +c 退出日志

14、       创建用户组、用户

useradd csn

passwd neusoft1

 

groupadd csns

15、       赋权

u 表示该档案的拥有者,g 表示与该档案的拥有者属于同一个群体(group)者,o 表示其他以外的人,a 表示这三者皆是。

+ 表示增加权限、- 表示取消权限、= 表示唯一设定权限。

r 表示可读取,w 表示可写入,x 表示可执行,X 表示只有当该档案是个子目录或者该档案已经被设定过为可执行。

其中a,b,c各为一个数字,分别表示User、Group、及Other的权限。

r=4,w=2,x=1

chmod ug=rwx,o=x file  和 chmod 771 file  效果相同

 chown -R csn /var/lib/mysql

 

16、       解压缩

样例:tar xvfz xampp-linux-1.7.7.tar\(1\).gz -C /opt

样例: unzip -o -d /opt xxx.zip

unzip -o -d /home/sunny myfile.zip

把myfile.zip文件解压到 /home/sunny/

-o:不提示的情况下覆盖文件;

-d:-d /home/sunny 指明将文件解压缩到/home/sunny目录下;

zip -r myfile.zip ./*

将当前目录下的所有文件和文件夹全部压缩成myfile.zip文件,-r表示递归压缩子目录下所有文件.

 

17、       启动mysql数据库

service mysqld start

18、       查看主机信息

Uname –a

19、       netstat -tlnp |grep *显示tcp端口连接

netstat -tlnp |grep *

20、       查询opt目录下  包含 scok的文件

                find  /opt -name *.sock

21、       建立软连接

ln -s   源地址   目标地址

22、       查看软连接

ls –l

23、       删除除指定文件/文件夹外其他文件

ls |grep -v PPCDN | xargs rm -rf

24、       linux远程拷贝和本地拷贝命令

scp 文件名  root@远程ip:/路径/ 

 

25、       linux安装odbc

 

./configure --prefix=/usr/local/unixODBC-2.2.1 --includedir=/usr/include --libdir=/usr/lib -bindir=/usr/bin --sysconfdir=/etc

Make install

26、        Rpm安装

rpm -q XX //查询程序是否安装

rpm -ivh   无依赖安装 + --force --nodeps

27、       mysql安装

1.  tar zxvf  mysql-5.6.11.tar.gz  -C /usr/src          释放这个包到/usr/src 

2.  cd /usr/src/mysql-5.6.11                                 进入释放后的目录 

3.  ./configure  prefix=/usr/local/mysql

4.   make   &&  make install                

修改配置文件权限,默认是使用用户 mysql 改成root,然后指定配置文件,

(1)、./mysql --defaults-file=/usr/local/mysql/share/mysql/my-medium.cnf

(2)、永久性修改cp /usr/local/mysql/share/mysql/my-medium.cnf  /etc/my.cnf

 

Rpm安装,直接运行指定安装路径

28、       odbc安装

./configure --prefix=/usr/local/unixODBC

 

Make install

测试odbc

 [root@bogon bin]# cd /usr/bin/ 21. [root@bogon bin]#

[root@s120198 bin]# ./isql CSN root mysql

查询系统共享动态库

ldconfig -p | grep libc.so

29、       nohup 启动

nohup ./CU config &

30、       编译动态库

ldconfig -p | grep lame

31、       查看当前shell中所有命令

echo $PATH

32、       查命令路径

如:Which  cd

33、       查文件路径、命令路径

Whereis   locate

34、       查看端口包

tcpdump -Xns 0 port 8081

tcpdump port 16161 and host 10.4.120.198

35、       mysql授权

GRANT ALL PRIVILEGES ON *.* TO ‘myuser‘@‘192.168.1.3‘ IDENTIFIED BY ‘mypassword‘ WITH GRANT OPTION;

FLUSH   PRIVILEGES;

36、       启停mysql

/usr/local/mysql/bin停止:./mysqladmin -uroot shutdown  登陆mysql停止

/usr/local/mysql/share/mysql启动:./mysql.server start    不登陆停止

37、       安全启动mysql

/opt/lampp/bin/mysqld_safe --datadir=/opt/lampp/var/mysql --pid

-file=/opt/lampp/var/mysql/pms4.pid --skip-grant-tables --ledir=/opt/lampp/bin

 

本文出自 “呼吸雨后泥土的味” 博客,请务必保留此出处http://tongl.blog.51cto.com/4470985/1836847

一个java工程师的前6年工作部分技术积累(二)

标签:技术   java工程师   

原文地址:http://tongl.blog.51cto.com/4470985/1836847

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!