생계/MySQL2023. 11. 6. 17:50

mysql 자주쓰는 함수 정리해보자 

1) 문자열 

SELECT SUBSTR(STMT,2,3)                  -- 문자열 자르기
            , CHAR_LENGTH(STMT)            -- 문자열길이
            , LENGTH(STMT)                         -- 문자열길이 (byte)
            , REVERSE(STMT)                      -- 거꾸로 출력
            , CONCAT(STMT,'AAA','!@#')      -- 문자열 붙이기 ||
  FROM (
               SELECT 'ABC테스트123!@#' STMT FROM DUAL;
              )A;

2) 날짜 

- 현재시간 

select now()                  -- sysdate
 , curdate()                    -- trunc(sysdate)
 , date_add(now(), interval 1 second)   -- 기준시간 + 1초 
 , date_add(now(), interval 1 minute)    -- 기준시간 + 1분  
 , date_add(now(), interval 1 hour)        -- 기준시간 + 1시간  
 , date_add(now(), interval 1 day)        -- 기준시간 + 1일
 , date_add(now(), interval 1 month)    -- 기준시간 + 1달 
 , date_add(now(), interval 1 year)       -- 기준시간 + 1년
 , date_sub(now(), interval 1 second)
 , date_sub(now(), interval 1 minute)
 , date_sub(now(), interval 1 hour)
 , date_sub(now(), interval 1 day)
 , date_sub(now(), interval 1 month)
 , date_sub(now(), interval 1 year)
  from dual
;
  

반응형
Posted by 돌고래트레이너
생계/MySQL2023. 10. 23. 18:01

mysql 에서 DB정보들 확인하는 법 

1) TABLES  
- show tables from dbname like '%ABC' => 테이블 리스트 
- show create table TABLE_NAME; => DDL 확인
- show columns from TABLE_NAME; == desc TABLE_NAME
- show table status from dbname like '%ABC' => table info
 * 참조제약조건
 select constraint_name, table_name
   from information_schema.referential_constraints
  where constraint_schema='SCHEMA_NAME'
    and referenced_table_name='TABLE_NAME';


2) USER 
- select * from mysql.user => 유저리스트 
- show grants for 'user'@'ip'; => 권한 확인 

3) DB 
- show variables like '%server%'
- select database(); => 현재접속 DB
- select user();    => 현재접속 user 
- select version(); => 버전정보 == show variables like 'version'.
- show processlist => select * from performance_schema.processlist;

- show events => select * from information_schema.events;

 

반응형
Posted by 돌고래트레이너
생계/Oracle2023. 9. 20. 15:01

1) test 유저 생성

create user test identified by "Passw0rd";
grant connect to test;

2) wallet 용 tns alias 추가 
cd $ORACLE_HOME/network/admin
vi tnsnames.ora

WAL_TEST = 
(DESCRIPTION=
(ADDRESS_LIST=
(ADDRESS=(PROTOCOL=TCP)(HOST=xxx.xx.xx.xxx)(PORT=1521))
)
(CONNECT_DATE=
(SERVICE_NAME=DFS)(SERVER=DEDICATED)
)
)


3) conn script 

cd /home/oracle/

-- vi p_test.sql
conn test/"Passw0rd" @WAL_TEST
show user;
select count(*) from all_objects;
exit;

-- vi np_test.sql
conn /@WAL_TEST
show user;
select count(*) from all_objects;
exit;


4) make wallet

-- wallet 저장 디렉토리 생성
mkdir $ORACLE_HOME/network/admin/wallet

-- wallet 생성, wallet 패스워드 입력
orapki wallet create -wallet "wallet 디렉토리" -auto_login_local

-- credential 생성, alias, 계정/비번 wallet 패스워드 입력 
mkstore -wrl "wallet 디렉토리" -createCredential WAL_TEST test Passw0rd

=> wallet 비밀번호 입력 

-- sqlnet.ora 에 wallet dir 추가 

cd $ORACLE_HOME/network/admin

vi sqlnet.ora

WALLET_LOCATION=
(SOURCE=
(METHOD=FILE)
(METHOD_DATA=
(DIRECTORY= "wallet 디렉토리")
))

SQLNET.WALLET_OVERRIDE = TRUE
SSL_CLIENT_AUTHENTICATION = FALSE
SSL_VERSION = 0

5) 실행

cd /home/oracle/

ss
@p_test

@np_test


-- ### wallet 관리 #######

select *
  from v$encryption_wallet
;


-- credential list 확인 

mkstore -wrl "wallet 디렉토리" -listCredential


-- credential list 삭제 
mkstore -wrl "wallet 디렉토리" -deleteCredential WAL_TEST


-- credential 비번 수정 
mkstore -wrl "wallet 디렉토리" -modifyCredential WAL_TEST test pass1234

-- wallet 비번 수정 
orapki wallet change_pwd -wallet "wallet 디렉토리" -oldpwd "Passw0rd" -newpwd "oracle123"


-- wallet 삭제 
rm *wallet*

반응형

'생계 > Oracle' 카테고리의 다른 글

oracle audit 파일 삭제  (0) 2023.05.29
대용량 컬럼 drop 하기 # set unused  (0) 2023.05.04
리눅스 오라클 hugepage 설정  (0) 2023.05.03
RMAN CATALOG DB 쓰는 이유  (0) 2023.02.28
오라클 메모리 구조 Memory Architecture  (0) 2023.01.24
Posted by 돌고래트레이너