728x90 반응형 전체보기434 [ 조은글 5194호 - 소통의 중요함 ] 소통의 중요함이 점점 더 강조되고 느껴집니다. 의사소통뿐 아니라 인간의 삶은 모름지기 소통이 그 원만한 한 생의 요체이기 때문이겠습니다. 나누고 섬기고 이해하고 배려함이 모두 소통에 의하여 이루어진다고 생각합니다. 이런 소통의 중심에 ''말''이라는 도구가 필요합니다. ■ 소통에서 주의할 일 1. "앞"에서 할수 없는 말은 "뒤"에서도 하지 말 것입니다. 뒷말은 가장 나쁘고. 궁시렁 거림도 바람직하지 않습니다. 2. "말"을 독점하면 "적"이 많아 집니다. 적게 말하고 많이 듣도록 하십시요. 들으면 들을수록 내편이 많아집니다. 3. 목소리의 "톤"이 높아질수록 "뜻"은 왜곡됨을 잊지 마십시요. 흥분하지 마시고 낮은 톤의 목소리에 힘이 있음을 잊지 마십시요. 4. "귀"를 훔치려 하지말고 "가슴"을 흔드는.. 2021. 7. 27. [ 조은글 5193호 - 왕자와 목동 ] 영국의 한 왕자가 사냥을 나갔다가 길을 잃고 헤매게 되었습니다. 도중에 한 목동을 발견했습니다. 왕자는 그에게 길을 안내해 달라고 부탁했습니다. "안 됩니다. 저는 남의 집 양을 치는 목동인데 양 떼를 놔두고 길을 안내할 수 없습니다." 라고 목동은 거절했습니다. 월급을 물으며 월급의 3배를 줄 터이니 안내하라고 하니까, "못 합니다. 돈 때문에 저를 믿고 양을 맡겨준 분을 저버릴 순 없습니다." 하더랍니다. 참다 못한 왕자는 총을 겨누었습니다. "안내하지 않으면 죽이겠다!" 고 하니까 그제서야 한숨을 쉬면서 목동이 말했습니다. "아무리 그러셔도 전 양들을 버리지 않을 겁니다. 그러나 말로는 안내해 드리지요. 저 산을 세 번 넘은 후에 서쪽으로 계곡을 따라 20분간 가면 도로가 나옵니다." 라고 대답하더.. 2021. 7. 27. [PostgreSQL] 원격접속시 오류 발생할때 처리 pg_hba.conf 파일열어서 원격접속 허용아이피 추가 개발 테스트용에는 전체 아이피 접속 허용 아래와 같이 추가 후 재기동 host all all 0.0.0.0/0 md5 2021. 7. 26. no persistence.xml file found in project no persistence.xml file found in project Window->Preferences->Java Persistence-> JPA-> Errors/warnings-> Project 2021. 7. 22. Maven 환경의 톰캣 lib 배포 안될경우 에러 [ERROR] Maven 환경의 프로젝트 구동시 에러 후아뚜아 : HU-A-DDU-A 아크투루스 2013. 10. 8. 19:13 이 오류는 이 오류는 maven의 dependency가 정상적으로 처리되지 못한 경우.. tomcat의 server plugin의 임시 deploy 디렉토리에 WEB-INF/lib에 jar들이 정상 배포되지 않기 때문입니다.. 해결하시는 방법은.. 개발환경 v1.0(eclipse 3.4기반)의 경우는 다음과 같이 조치하시면 되실 것 같습니다. - Project 메뉴 선택 -> Clean... 선택 후.. 프로젝트 재빌드 수행.. - 프로젝트 선택 -> context menu -> Maven -> Update Project Configuration - 프로젝트 선택 -> con.. 2021. 7. 22. wildfly X-Powered-By : JSP/2.3 보안이슈 해결 사이에 추가한다. 브라우저에서 제공하는 툴 등으로 HTTP 요청/응답 헤더 정보를 조회할 수 있다. 니는 악의적인 목적으로 이용하면 보안상 큰 이슈가 될 수 있으므로 보통 헤더 정보 중에서 중요한 정보를 감출 수 있다. 아래는 HTTP 요청에 의한 응답 헤더 내용이다. Connection:closeContent-Encoding:gzipContent-Type:text/html;charset=UTF-8Date:Tue, 14 Aug 2012 15:34:02 GMTServer:ApacheTransfer-Encoding:chunkedVary:Accept-EncodingX-Powered-By:JSF/1.2 위의 정보에서 "X-Powerd-By" 정보와 "S.. 2021. 7. 21. [ 조은글 5192호 - Love is Everything ] 다섯 명의 자식을 둔 아버지가 있었습니다. 그 중 한 명의 아들이 유독 병약하고 총명하지도 못하여 형제들 속에서조차 주눅 들어 있는 아들이 아버지는 늘 가슴 아팠다고 합니다. 어느 하루, 아버지는 다섯 그루의 나무를 사 왔습니다. 그리고 다섯 명의 자식들에게 한 그루씩 나누어 주며 1년이라는 기한을 주었지요. 가장 잘 키운 나무의 주인에게는 뭐든 원하는 대로 해 주겠다는 약속과 함께 말입니다. 약속한 1년이 지났습니다. 아버지는 자식들을 데리고 나무가 자라고 있는 숲으로 갔습니다. 놀랍게도 유독 한 그루의 나무가 다른 나무들에 비하여 키도 크고 잎도 무성하게 잘 자라고 있었습니다. 바로 아버지의 가슴을 가장 아프게 하였던 그 아들의 나무였던 게지요. 약속대로 아버지는 아들에게 원하는 것을 물었고 예상대로.. 2021. 7. 21. [ 조은글 5191호 - '평범'을 '특별'로 바꾸는 힘 ] 미국 하버드 대학의 동물학자 로버트 로젠달 박사는 들쥐의 생태를 연구하기 위해 들쥐 200여 마리를 연구소에서 키우고 있었다. 어느 여름, 세계 여행을 떠나기 위해 3개월이나 되는 긴 휴가를 냈다. 그는 여행을 떠나면서 키우던 들쥐중 50마리만 골라 그들의 머리 위에 흰 페인트를 조금씩 칠해주었다. 박사가 여행을 떠나고 들쥐를 키우던 사육사들은 몹시 궁금해졌다. “박사님이 왜 50마리만 골라 머리에 흰 페인트칠을 해놓으신 걸까?” 그러고는 나름대로 추측하기 시작했다. ‘머리에 흰 페인트칠로 표시해놓은 들쥐는 품종이 좋을 거야.’ ‘지능이 뛰어나고 영리한 것이거나 하여튼 좀 다른 것이겠지.’ 그런 생각이 들자 사육사들은 무의식으로 다른 쥐들보다 머리에 흰 페인트칠을 한 쥐들에게 좀 더 관심을 가지고 정성을.. 2021. 7. 21. [ 조은글 5190호 - 엘도라도의 망상 ] 미국의 골드러시가 시작되기 전, 온 유럽은 ‘엘도라도’의 열병으로 홍역을 치렀습니다. 스페인어 ‘엘도라도’는 ‘황금가루를 칠한 사람’이란 뜻으로 콜롬비아 인디언 마을의 전설적인 통치자를 가리키는 말입니다. 그는 축제 때가 되면 온 몸에 황금 가루를 칠한 채 축제를 주관했고, 축제가 끝난 뒤에는 호수에 들어가서 황금 가루를 씻었습니다. 그때를 맞춰 신하들은 온갖 보석과 황금으로 만들어진 물건들을 호수 속으로 던졌습니다. 그래서 그 호수의 바닥에는 온통 황금으로 가득 차 있다는 것입니다. 이 전설 같은 이야기가 유럽으로 전해진 뒤, 엘도라도는 황금 마을을 지칭하게 되었습니다. 수많은 유럽인들이 엘도라도를 찾아 남아메리카로 건너갔습니다. 그들의 행렬은 미국의 골드러시가 시작되기 전까지 이어졌지만 모두 허탕을 .. 2021. 7. 21. [PostgresSQL] postgresql 백업 및 복원 /* 패스워드를 파일로 등록해 놔야 한다 */ C:\Users\cbw\AppData\Roaming\postgresql\pgpass.conf 파일 내용 localhost:5432:*:postgres:postgres /* db전체백업 */ pg_dump.exe --file "D:\\temp\\invako.backup" --host "localhost" --port "5432" --username "postgres" --no-password --verbose --format=c --section=pre-data --section=data --section=post-data --column-inserts --encoding "UTF8" "invakodb" /* db전체복원 */ pg_restore.exe --h.. 2021. 7. 21. [PostgresSQL] 테이블의 컬럼정보확인 NFORMATION_SCHEMA.COLUMNS 을 이용하여 특정 테이블의 컬럼 목록과 특정 컬럼 존재 여부를 확인해보자. 우선 PostgreSQL의 구조를 보면 알겠지만 데이터베이스 내에 Schemas 안에 여러 그룹(?) 이 존재하며 각각 테이블 목록이 존재한다. SELECT * FROM INFORMATION_SCHEMA.COLUMNS 라는 구문을 사용하면 모든 SCHEMA 안에 있는 컬럼 정보들을 가져오는데 그 컬럼 정보들은 table_catalog, table_schema, table_name, column_name, ... 말그대로 테이블 정보를 전부 가져온다. 이 구문을 이용하여 where 조건을 걸어주어 특정 테이블 정보와, 특정 테이블의 컬럼 존재 여부를 확인할 수 있다. ▷예제1) 특정 테.. 2021. 7. 17. 조건에 따른 값 보여주기 조건에 따라 다른값을 보여주는 CASE WHEN ~ END 구문에 대해 알아보자. CASE WHEN 구문을 간단하게 설명하자면 아래와 같다. CASE WHEN condition_1 THEN result_1 WHEN condition_2 THEN result_2 [WHEN...] [ELSE else_result] END 여기서 ELSE 부분 역시 생략이 가능하지만 위에서 만족하는 조건이 없으면 NULL을 반환하니 상황에 따라 뭐라도 넣어주는것이 좋을 수 있다. CASE WHEN 구문은 PostgreSQL 에서만 존재하는건 아니라서 오라클 등등에서 사용할 수 있으니 이참에 잘 알아두자. ▶예제1) 일반 구문 형식 SELECT CASE WHEN score IS NOT NULL THEN 'D' ELSE 'F' .. 2021. 7. 17. [PostgreSQL] 다른테이블 복사하여 새로운 테이블 생성 ▷예제1) 다른 테이블의 구조만 복사하기 CREATE TABLE mine (LIKE othertable); ▷예제2) 다른 테이블의 구조와 데이터 복사하기 CREATE TABLE it AS SELECT * FROM othertable ▷예제3) 다른 테이블의 구조와 테이블의 모든 정보 복사하기(ft. index) create table trecord (like othertable including all); -- 추가로 데이터도 넣어주기 insert into trecord (select * from othertable) 2021. 7. 17. [PostgreSQL] 데이터 있으면 update 없으면 insert PostgreSQL 에서 사용하는 upsert구문에 대해 알아보자. (오라클에서는 merge into / mysql에서는 on duplicate on key update 를 사용한다.) 구문은 다음과 같다. INSERT INTO [TABLE] (COLUMN1, COLUMN2, ...) VALUES (VALUE1, VALUE2, ...) ON CONFLICT [column_name / ON CONSTRAINT constraint_name/ WHERE predicate] [DO NOTHING] [DO UPDATE SET column1 = value1, ...] 기본구문은 이런식으로 이루어져 있고 하나씩 설명하자면 ON CONFLICT column_name : 특정 컬럼명을 기준으로 체크를하며 컬럼을 여러개 .. 2021. 7. 17. [PostgreSQL] 시퀀스 생성 및 사용 ▷생성 CREATE SEQUENCE [seq_name] ▷nextval nextval('seq_name') ▷currval currval('seq_name') ▷값 초기화 setval('seq_name', seq_val, [true/false]) ▷삭제 DROP SEQUENCE [seq_name] 사용 예제) CREATE SEQUENCE mine_seq; SELECT nextval('mine_seq'); SELECT currval('mine_seq'); DROP SEQUENCE mine_seq; 시퀀스를 생성해놓고 바로 확인을 하기 위해 currval()을 사용하여 확인하게 되면 다음과 같은 에러가 발생하는데 ERROR: 오류: "mine_seq" 시퀀스의 currval 값이 현재 세션에 지정되어 있지 .. 2021. 7. 17. [PostgreSQL] Schema 관리(생성/추가/변경/삭제) 1. postgresql schema 구조 - schema는 object들의 논리적인 집합을 의미한다. - TABLE, VIEW, SEQUENCE, SYSNONYM, DOMAIN, FUNCTION 등의 OBJECT들로 구성된다. - SCHEMA를 사용하는 이유는 논리적집합체를 만들어 관리 편의성을 높이고 여러 사용자의 간섭없이 접속할 수 있게 한다. 2. 스키마 조회 - \dn 명령어로 조회 가능 3. 스키마 생성 (1) CREATE SCHEMA [schema_name] AUTHORIZATION [user_name] [ schema_element [ . . . ] ]; - 이름을 입력하지 않을 경우 USER의 이름을 schema 이름으로 사용한다. (pg_ 로 시작하는 이름은 스키마 이름으로 불가능) (.. 2021. 7. 16. [PostgreSQL] SQL 파일 실행 postgres 계정에서 실행합니다. [root@localhost ~]$ su - postgres 비밀번호 입력 : [postgres@localhost ~]$ [postgres@localhost ~]$ psql -U postgres -d postgres -a -f /var/lib/pgsql/11/database.sql psql -U [database_user] -d [database_name] -a -f [sql file 절대경로] * postgres 계정으로 실행하면 관리자 권한이 없어 파일이 검색되지 않거나 찾지 못하는 경우가 많으니 postgres가 소유권을 가진 폴더로 sql 파일을 이동시켜 놓은 후 pwd로 정확한 현재 경로 확인해서 psql 명령어 실행하는게 간편하고 빠릅니다. 출처: http.. 2021. 7. 16. [PostgreSQL] 문자열 함수 (자르기, 붙히기, 치환 등) 문자열 함수 btrim : 문자열의 시작과 끝 양쪽에 지정된 문자들을 제거 char_length : 문자열의 길이를 반환 character_length : 지정된 문자열의 길이를 반환 || : 2개의 문자열을 합하여 반환 initcap : 문자열 중 첫번째 문자는 대문자로 변환하고 나머지는 소문자로 변환 length : 문자열의 길이를 반환 lower : 지정된 문자열을 모두 소문자로 변환 lpad : 지정된 문자열을 원하는 길이로 맞추는데, 이때 부족한 문자를 왼쪽에 채움 ltrim : 문자열의 왼쪽에서 지정된 모든 문자를 제거 position : 문자열에서 지정된 문자열이 존재하는 인덱스값을 반환 repeat : 문자열을 원하는 만큼 반복해서 반환 replace : 기존의 문자열을 구성하는 부분 문자.. 2021. 7. 16. [PostgreSQL] 사용하지 않는 인덱스 조회 및 성능 개선 인덱스(Index) 혹은 색인은 테이블 설계시 많이 고민하는 부분이고 성능 향상에 많은 도움을 주고 있지만 프로그램의 설계 변경 혹은 기능 개선등 여러 상황에 따라 사용하지 않는 인덱스가 발생하게 됩니다. 여러 상황 때문에 현재는 사용하지 않는 인덱스를 찾아보기 위한 간략한 정리 내용입니다. 인덱스 구조 이해를 위한 예시 인덱스는 지정한 컬럼에 대한 매핑 정보를 가지고 있습니다. 사용하지 않는 인덱스를 찾아봐야되는 이유 보통 쿼리 튜닝을 위해 운영중인 데이터베이스에서 EXPLAIN 명령어를 많이 사용하고 필요시 인덱스 추가는 생기지만 삭제는 거의 없을거라 생각됩니다. 만약 그렇다면 극단적으로 생각했을때 오래된 프로그램 일 수록 추가된 인덱스는 많지만 삭제된 인덱스가 없다는건 불필요한 인덱스도 많을수 있다.. 2021. 7. 16. [PostgreSQL] 암호화 함수 사용 (pgcrypto) 1. 확장 모듈 설치 create extension pgcrypto; enterprisedb 계정으로 해당 모듈을 설치할 스키마 선택 후 실행. 암호화 관련 함수 생성 2. Raw encryption functions convert_to/convert_from : 문자열 변환/복원 encode/decode : 16진수 인코딩/디코딩 encrypt/decrypt : 암호화/복호화 예제) -> ENC_KEY는 실제 사용할 암호화KEY로 대체해야 함. * 암호화 : utf8로 변환한 후, 암호화키로 'aes'알고리즘을 사용하여 암호화한 후, 그 값을 16진수(hex)로 encoding함 select encode(encrypt(convert_to('홍길동','utf8'),'ENC_KEY','aes'),'hex'.. 2021. 7. 16. 이전 1 ··· 15 16 17 18 19 20 21 22 다음 728x90 반응형