CentOS 7 PoatgreSQL을 설치하려면 먼저 운영체제 종류와 버전 별로 제품의 어떤 버전이 지원 되고 있는지 확인을 해야 합니다.


centos postgresql install


PostgreSQL도 홈페이지에 들어가 보면 202005월 현재 지원 하는 상황을

PostgreSQL Version

64 Bit Platforms

32 Bit Platforms

10

RHEL / CentOS / OEL 7.x & 6.x

RHEL / CentOS / OEL 6.x

9.6

RHEL / CentOS / OEL 7.x & 6.x

RHEL / CentOS / OEL 6.x

9.5

RHEL / CentOS / OEL 7.x & 6.x

RHEL / CentOS / OEL 6.x

이렇게 알려주고 있습니다.

 

지원하는 패키지가 많이 있지만 주요 패키지 구성은

postgresql-client

libraries and client binaries

postgresql-server

core database server

postgresql-contrib

additional supplied modules

postgresql-devel

libraries and headers for C language development

 

이런거라네요당연히 server는 설치를 해야 하는 거고 나머지는 필요하면 같이 설치 해도 되고 나중에 따로 설치를 하면 됩니다이제 설치를 진행 합니다.

 

1. PostgreSQL 설치

 

설치하기 전에 yum을 업데이트 합니다.

$ sudo yum update -y

 

현재 상태에서 어떤 버전이 설치 가능 한지 확인 해 봅니다.

$ yum list | grep ^postgresql



centos postgresql install


현재는 재가 설치한 CentOS에서는 9.2 버전을 설치 할 수 있군요저는 다른 버전을 설치 하고 싶은데 그러려면 먼저 rpminstall 해야 합니다.  다운로드 사이트에 접속해서

https://download.postgresql.org/pub/repos/yum/srpms/


centos postgresql install


원하는 버전 별로 찾아 들어가 rpm 주소를 복사해서 설치를 하면 됩니다꼭 아래처럼 하지 않아도 본인이 원하는 파일을 찾아서 설치 하세요.

$ sudo yum install https://yum.postgresql.org/9.6/redhat/rhel-8-x86_64/pgdg-redhat-repo-latest.noarch.rpm


centos postgresql install


설치를 완료하고 다시 $ yum list | grep ^postgresql  명령을 실행해보면


centos postgresql install


이제는 9.4, 9.5, 9.6, 10, 11, 12등 설치할 수 있는 버전이 많아졌습니다.

이중 설치하려는 버전 번호를 붙여서 명령어를 생성하면 됩니다.

$ sudo yum install postgresql96 postgresql96-server


centos postgresql install


설치가 완료되면 자동으로 postgres라는 계정이 하나 생성 됩니다.  /etc/passwd에 추가되고 /var/lib/pgsql/에 설치 됩니다.

 

2. PostgreSQL 초기화

 

initdb 명령으로 초기화를 진행 합니다.

 

$ sudo /usr/pgsql-9.6/bin/postgresql96-setup initdb


centos postgresql install


PostgreSQL을 등록하고 서버 재시작 후에도 자동으로 실행되도록 합니다.

$ sudo systemctl start postgresql-9.6

$ sudo systemctl enable postgresql-9.6


centos postgresql install


초기화 작업과 등록 작업이 완료 되었습니다.

 

3. PostgreSQL 설치 확인

 

다음 명령으로 설치를 확인해 봅니다.

 

$ ps -ef | grep post


centos postgresql install


데이터 베이스에 접속해 봅니다.

$ sudo -u postgres psql


centos postgresql install


설치 작업이 잘 되었습니다.


- copy coding -


java로 프로그램을 할 때 파라미터로 가장 많이 사용하게 되는 ObjectVO 객체이고 VO로 값을 받거나 전달해야 하는 경우 VO의 값을 확인 하려면 디버깅모드에서 Variables에 있는 값을 확인 하거나 Vo.getXxx()로 하나씩 출력을 해봐야 하는 불편함이 있는데 ObjectMapper를 이용하면 VoJSON 형태로 변환하여 사용할 수 있습니다.



 

먼제 pom.xml에 라이브러리를 등록 합니다.

 

<!-- https://mvnrepository.com/artifact/com.fasterxml.jackson.core/jackson-databind -->

        <dependency>

            <groupId>com.fasterxml.jackson.core</groupId>

            <artifactId>jackson-databind</artifactId>

            <version>2.11.0</version>

        </dependency>

 

main 으로 사용할 VO 파일을 생성 합니다.

 

public class SampleVo {

 

        private String username; /* 사용자ID*/

        private String name; /* 이름*/

        private Map<String, Object> mobile; /* 휴대전화*/

        private Map<String, Object> tel; /* 전화번호*/

       

        //getXxx, setXxx 생략

       

}

 

VO를 또 생성 합니다이건 Map<String, Object>로 설정한 mobile을 위한 Vo 입니다.


public class MovileVo {

 

        private String mobile1; /* 휴대전화1*/

        private String mobile2; /* 휴대전화2*/

        private String mobile3; /* 휴대전화3*/

       

        //getXxx, setXxx 생략

       

}

 

 

tel을 위한 Vo도 하나 더 추가 합니다.


public class TelVo {

 

        private String tel1; /* 전화번호1*/

        private String tel2; /* 전화번호2*/

        private String tel3; /* 전화번호3*/

       

        //getXxx, setXxx 생략

}

 

 

이제 Controller를 하나 만들고 코딩을 합니다.

MovileVo TelVo에 값을 설정하고 SampleVoMobileVoTelVo를 이용하여 값을 설정 합니다.



import com.fasterxml.jackson.databind.ObjectMapper;


        @RequestMapping(value = "/sample/test")

        public void sampleMethod(Model model) throws Exception {

              

               SampleVo sampleVo = new SampleVo();

               MovileVo movileVo = new MovileVo();

               TelVo telVo = new TelVo();

              

               movileVo.setMobile1("010");

               movileVo.setMobile2("1111");

               movileVo.setMobile3("2222");

              

               telVo.setTel1("02");

               telVo.setTel2("111");

               telVo.setTel3("2222");

              

               Map<String, Object> movileMap = new HashMap<String, Object>();

               Map<String, Object> telMap = new HashMap<String, Object>();

              

               movileMap.put("movile1", movileVo.getMobile1());

               movileMap.put("movile2", movileVo.getMobile2());

               movileMap.put("movile3", movileVo.getMobile3());

              

               telMap.put("tel1", telVo.getTel1());

               telMap.put("tel2", telVo.getTel2());

               telMap.put("tel3", telVo.getTel3());

              

               sampleVo.setUsername("copycoding");

               sampleVo.setName("카피코딩");

               sampleVo.setMobile(movileMap);

               sampleVo.setTel(telMap);

              

               ObjectMapper mapper = new ObjectMapper();

               String samString = mapper.writeValueAsString(sampleVo);

              

               System.out.println("=== sampleVo ===" + samString);

        }

 

ObjectMapper mapper = new ObjectMapper();

String samString = mapper.writeValueAsString(sampleVo);

ObjectMapper를 설정 하고 writeValueAsString()을 이용하면 JSON 형태의 String 값을 얻을 수 있습니다.

 

localhost:8080/sample/test를 호출하여 실행을 하여 log를 확인 해 봅니다.

 

=== sampleVo ==={"username":"copycoding","name":"카피코딩","tel":{"tel1":"02","tel2":"111","tel3":"2222"},"mobile":{"movile1":"010","movile3":"2222","movile2":"1111"}}

 

String형이라 다시 정리 하면

=== sampleVo ===

{

"username":"copycoding",

  "name":"카피코딩",

  "tel":{

        "tel1":"02",

        "tel2":"111",

        "tel3":"2222"

      },

  "mobile":{

        "movile1":"010",

        "movile3":"2222",

        "movile2":"1111"

      }

}

 

이런 결과를 볼 수 있습니다.


- copy coding -


거미줄에 거미가 매달려 있는 것을 보는 꿈 해몽

 -> 주변사람이 자기에게 적의를 가지고 음모를 꾸미고 있음을 말하고 있다.


거미가 먹이를 잡아 거미줄로 휘감고 있는 꿈 해몽

 -> 재물 생기고 믿을만한 심복을 얻게 된다.


건물 구석이나 천장에 거미가 거미줄을 치는 것을 보는 꿈 해몽

 -> 신변에 어려운 일이 생기거나 불행한 상황을 벗어나지 못해 어려워질 것이다.


거미줄이 방구석이나 천장 등에 엉켜있는 꿈 해몽

 -> 머리가 아프거나 운세가 막힌다.


거미줄이 몸에 묻는 꿈 해몽

 -> 중병에 걸리던지, 귀찮은 일이나 심신이 피곤한 일이 생길 것이다.


거미줄에 걸린 곤충을 떼어내는 꿈 해몽

 -> 어려운 일을 당한 사람을 구출할 일이 있을 것이다.


거미를 죽이는 꿈 해몽

 -> 좋은 소식이 있을 것이다.


벌레 곤충 꿈해몽 모음



거미가 실을 뽑고 있는 꿈 해몽

 -> 근일에 많지는 않으나 돈이 생긴다.


거미가 벽을 기어오르고 있는 꿈 해몽

 -> 현재 가장 고민하는 일이 호전된다.


거미가 먹이를 잡아 휘감고 있는 꿈 해몽

 -> 일을 도와줄 귀인을 만나거나 생각하지 못한 금전이 들어 올 길몽이다.


거미줄에 매달린 곤충을 구해 주는 꿈 해몽

 -> 난관에 처한 사람을 도와주거나 선행을 베풀게 된다.


여기저기 거미줄이 뒤엉켜 있는 꿈 해몽

 -> 활동 영역을 넓어지며 많은 일을 추진하거나, 사업이 두루 잘 진행될 것이다.


거미가 거미줄에 매달려 있는 꿈 해몽

 -> 누군가의 음모와 계략때문에 함정에 빠진다.


거미떼가 달려드는 꿈 해몽

 -> 예상하지 못한 시비를 당하거나 치한에게 시달림을 받을 수 있다.


거미를 보는 꿈 해몽

 -> 일이 꼬이고 결말이 나지 않아서 고민하는 날을 보내게 된다.


벌레에 물리는 꿈 해몽

 -> 사소한 일을 망각하고 있는데 대한 주의를 촉구하거나 병에 걸린다는 암시이다.


지네에게 물리는 꿈 해몽

 -> 투자나 융자를 받을 일이 생기며 재물을 얻게 된다.


지네가 벽이나 나무 위를 오르는 것을 보는 꿈 해몽

 -> 승진이나 진급을 할 수 있다는 것을 알려 주고 있다.


방 안에 지네가 가득한 것을 보는 꿈 해몽

 -> 이익이나 재산이 늘고, 우환 근심 고민 질병 등이 물러가는 징조이다.


다리에 거머리가 붙어 있는 꿈 해몽

 -> 대단한 재물이 들어오고 직원도 늘어 날 길몽이다.


거머리가 몸에 달라붙는 꿈 해몽

 -> 나쁜 사람을 만나 큰 피해를 보거나 우환이 생기는 등 곤란을 당할 징조이다.


털어내도 벌레가 계속 몸에 붙는 꿈 해몽

 -> 중병에 걸릴 위험이 크다.


벌레의 울음소리를 듣는 꿈 해몽

 -> 오랜만에 먼 곳에 있는 사람의 소식을 듣거나 부고를 받게 될 것이다.


송충이가 자기 몸에 붙는 꿈 해몽

 -> 가까운 시일내에 신변에 우환이 생길 것을 알려 주는 것이다.


송충이가 소나무를 갉아먹는 것을 보는 꿈 해몽

 -> 흉년이 들거나 천재지변, 재해 등이 닥칠 것을 알려주는 꿈이다.


송충이를 잡는 꿈 해몽

 -> 자기의 일이나 사업에서 방해인자나 사람을 제거할 일이 생긴다.


부엌에서 송충이가 따라 다니는 꿈 해몽

 -> 자손이 착하고 정직한 사람으로 부모에게 효도한다.


송충이를 보는 꿈 해몽

 -> 복잡한 일이 여러 가지 생겨서 정신을 차릴 수 없게 된다.


송충이가 몸에 붙어 있는 꿈 해몽

 -> 큰 화를 당할 징후이므로 심신을 조심해야 한다.


빈대 때문에 잠을 제대로 못 자는 꿈 해몽

 -> 장애요인이 되는 사람 때문에 세웠던 계획을 변경하게 된다.


양쪽 다리에 딱정벌레가 빈틈없이 붙어 있는 꿈 해몽

 -> 세일즈맨이 보험 가입이나 증권 등에 관한 일로 자신을 찾아온다.


벼룩이 갑자기 없어지는 꿈 해몽

 -> 현재 잡고 있는 것을 놓치기 쉽다는 암시이다.


달팽이가 험한 곳을 기어오르는 꿈 해몽

 -> 현재 하고 있는 일이 고비를 당한다.


바퀴벌레를 모두 잡아 자루에 넣는 꿈 해몽

 -> 정보를 수집하거나 어느 단체에서 중책을 맡는다.


달팽이 꿈 해몽

 -> 그다지 좋지 않은 꿈으로, 특히 의지할 곳이 없어서 외로움을 느끼고 있다.


달팽이를 보거나 요리해서 먹는 꿈 해몽

 -> 타인과 관련하여 재물의 손실을 보거나 사업상의 장애가 생겨 곤란을 겪게 된다


곤충 꿈 해몽

 -> 일반적으로 장애를 뜻한다.


곤충을 쫓아 버리거나 죽이는 꿈 해몽

 -> 생각보다 쉽게 문제에서 벗어 날 수 있다.


잠자리가 떼지어 날아오는 꿈 해몽

 -> 상황이 호전되고 기회가 생기며, 이성간에는 좋은 상대를 만나게 된다.


떼지어 고추잠자리가 날아다니는 꿈 해몽

 -> 자신을 도와줄 귀인을 만나거나 경사를 맞게 된다.또는 아름다운 여성을 아내로 맞거나, 여성이라면 임신을 할 태몽일 수도 있다.


반딧불이 환하게 빛나는 꿈 해몽

 -> 노력이 결실을 맺어 공명이 널리 알려지고 생활이 윤택해질 길몽이다.


풍뎅이 같은 곤충을 보는 꿈 해몽

 -> 매사에 행운이 따르며 재운이 있을 징조이다.


누에고치를 만드는 꿈 해몽

 -> 건설, 결혼 등이 이루어진다.


누에를 치는 꿈 해몽

 -> 누에를 치는 양만큼의 재운이 있어서 재물을 모으게 된다.


누에가 고치를 만드는 꿈 해몽

 -> 건설적인 작업을 하게 되거나 결혼이 성사되는 등 모든 일이 순조롭게 진행된다.


지렁이를 보는 꿈 해몽

 -> 재산이 늘고 집안에 기쁨이 넘쳐서 안락하며 발전이 있을 징후다.


지렁이가 길게 늘어나는 꿈 해몽

 -> 부동산으로 인해서 이익을 보게 된다.


구더기를 먹는 꿈 해몽

 -> 만사가 형통해지고 행운이 펼쳐진다.


구더기가 들끓는 꿈 해몽

 -> 이익과 재산이 늘어나고, 사업과 집안 살림이 풍성하게 번창할 조짐이다.


곤충들이 떼지어 다니는 꿈 해몽

 -> 자신의 생각대로 매사가 순조롭게 해결되어 평안한 날을 보내게 된다.


반딧불을 보는 꿈 해몽

 -> 일이 될 듯 말 듯하다가 되지 않고 고통을 당할 징조이다.


귀뚜라미 등 풀벌레 우는 소리를 듣는 꿈 해몽

 -> 생각지 못한 손재를 당하거나 풍파를 겪는 등 불행한 일이 일어날 조짐이다.


옷에 이가 우글거리는 꿈 해몽

 -> 가족 중에 환자가 생기거나 사고를 당하는 등 고난을 당하게 될 징조이다.


빈대나 벼룩 등 해충으로부터 시달림을 당하는 꿈 해몽

 -> 자신에게 손해를 입힐 사람이 나타날 징조이다.하던 일을 수정하거나 방향을 바꾸어야 한다.


벼룩을 잡으려다 놓치는 꿈 해몽

 -> 진행중인 일이 성사되지 않거나, 도둑을 놓칠 운세이다.


바퀴벌레를 보는 꿈 해몽

 -> 육체적 정신적으로 상당히 피로하게 될 징조이며, 장애나 말썽이 생겨서 어려움을 당하고 피해를 입는다.


풀속으로 지렁이가 숨어버리는 꿈 해몽

 -> 사업장이나 집안에 사고 또는 우환이 발생하여 근심이 있을 조짐이다.


- copy coding -


마이크로소프트사에서 Windows 7을 지원하지 않는다고 한지도 시간이 많이 흘러 아무래도 컴퓨터를 Windows 10으로 업그레이드 해야 할것 같아 작업을 하였습니다.  




작업하는 동안 생각보다  C:\에 공간이 많이 필요해서 파일들을 삭제해 가며 진행 했습니다업그레이드 진행은 자동으로 되기 때문에 앞부분에서 설치 시작 버튼만 눌러주면 컴퓨터 앞에 앉아 있을 필요 없습니다.

 

업그레이드를 위한 파일은 아래 링크에서 받을 수 있습니다.

https://www.microsoft.com/ko-kr/software-download/windows10

 

그런데 인터넷에서 자료를 찾아보다가 동일한 주소인데 화면이 다른 곳으로 가는 경우가 있었습니다한가지는


windows 10 upgrade


이런 화면에서 [지금 도구 다운로드] 버튼을 클릭해서 설치 파일을 다운로드 받아


windows 10 upgrade


관련 통지 및 사용 조건이라는 설치 팝업 창이 나오는 경우와


windows 10 upgrade


이런 화면에서 [지금 업데이트] 버튼을 클릭 해서 설치 파일을 다운로드 받아


windows 10 upgrade


Windows 10으로 업그레이드 라는 설치 팝업 창이 나오는 경우가 있습니다저는 두번째 설치 파일로 작업을 진행 했습니다사용권 계약서에 [수락]을 하고


windows 10 upgrade


먼저 컴퓨터가 윈도우즈 10을 설치 해서 사용할 수 있는 정도의 사양인지 확인을 합니다그래서 이상이 없는 경우 [다음] 버튼을 클릭하여 업그레이드를 진행 합니다여기서부터는 자동으로 작업이 진행 되니 그냥 구경만 하면 됩니다.


windows 10 upgrade


업그레이드를 위한 다운로드가 진행 됩니다우측 하단 [최소화] 버튼은 그냥 창을 아래로 내리는 작업을 하는 것으로 굳이 누를 필요는 없습니다업그레이드 준비가 완료 되면 창이 닫히고


windows 10 upgrade


다시 업데이트 다운로드 창이 열렸다 다시 닫히고


windows 10 upgrade


PC 확인 중 창이 열렸다가 다시 닫히고


windows 10 upgrade


항목 준비 중 창이 열렸다 다시 닫히고


windows 10 upgrade


업데이트 다운로드 중 창이 열렸다 다시 닫히고


windows 10 upgrade


필요한 작업 확인 중 창이 열렸다 다시 닫히고


windows 10 upgrade


Windows 10 설치 창이 열렸다 다시 닫히는데 설치는 시간이 좀 걸립니다.


windows 10 upgrade


이제 구경은 그만 하면 됩니다물론 30분간 그냥 기다리면 이것도 자동으로 되지만 저는 [지금 다시 시작] 버튼을 클릭 했습니다. 다시 시작하면


windows 10 upgrade


이번엔 업데이트 작업이 진행 됩니다업데이트 완료 후 자동으로 재시작을 합니다.


windows 10 upgrade


재 시작 후 드디어 Windows 7에서 Windows 10으로 업그레이드가 완료 되었습니다.


- copy coding -


1···39404142434445···118

+ Recent posts