[MySql, MariaDB] 

Spring Boot 연동시 타임존 에러 해결


 

개인적인 프로젝트를 진행하며 보인 에러입니다.

 

더보기

The server time zone value 'KST' is unrecognized or represents more than one time zone. You must configure either the server or JDBC driver (via the serverTimezone configuration property) to use a more specifc time zone value if you want to utilize time zone support.

 

DB 서버단에서 특별한 설정(타임존 세팅 등)을 하지 않아서 발생하는 문제이지만, 귀찮으므로 서버는 건들지 않는 선택을 하도록 하겠습니다.

 

 -해결방법 (DB서버를 건들지 않는 방법)

  > database url 맨 마지막에 ?serverTimezone=Asia/Seoul를 추가해주시면 됩니다.

  > 협정세계표준시(UTC)의 경우 ?serverTimezone=UTC를 추가해주시면 됩니다.

 


[Mysql, MariaDB] 계정 생성 및 권한 부여하기


 

Mysql 및 MariaDB에서 계정을 생성하고 권한을 부여하는 방법입니다.

 

 - root 권한으로 로그인

sudo mysql -u root -p

 > root 패스워드를 입력 후 로그인합니다.

 

 

 - 계정생성하기

 > 로컬 및 원격으로 접속이 가능한 계정 생성

create user 'USERNAME'@'%' identified by 'PASSWORD';

  -> username 부분에는 계정의 이름을, password 부분에는 계정의 암호를 입력합니다.

 

 > 로컬로만 접속이 가능한 계정 생성

create user 'USERNAME'@'localhost' identified by 'PASSWORD';

 

 

 - 생성한 계정에 권한을 부여할 DB 만들기

create database DBNAME default character set UTF8;

 > DBNAME 부분에 생성할 DB 명칭을 입력해주세요.

 > default charater를 utf8로 설정합니다.

 

 

 - 생성된 DB 확인

show databases;

 

 

 - 계정에 DB 권한 부여

grant all privileges on DBNAME.* to 'USERNAME'@'%';

 > 변경된 권한 적용

flush privileges;

 

 

 

 - 계정생성이 완료되면 생성된 계정으로 로그인이 가능

mysql -u USERNAME -p

 > 설정한 패스워드 입력 후 로그인

 > 권한 부여된 DB 확인

show databases;

 

 


[Ubuntu] Maria DB 설치하기


저는 개인적으로 DB 서버를 구축시엔 오픈소스와 여러 이유로 항상 Maria DB를 선택하곤 합니다.

오늘은 제가 좋아하는 Maria DB 설치방법을 알아겠습니다.

 

 - update하기 (필요시)

sudo apt update

 

 - Maria DB Server 설치하기

sudo apt install mariadb-server

 > 디스크 공간 사용 여부 (Y/n)이 나오면 y를 누르고 엔터를 하면 설치가 시작됩니다.

 > 설치가 완료되면 Maria DB의 보안에 대해서 설정할 수 있습니다.

sudo mysql_secure_installation

 > 루트 계정의 암호 설정 등 자신이 원하는 옵션을 취향에 따라 선택해주면 됩니다.

 > 1. Change the root password?_루트패스워드를 바꿀것인지? (개인적으론 y권장)

  -> 이후 루트패스워드 변경

 > 2. Remove anonymous users?_익명사용자를 지울것인지? 

 > 3. Disallow root login remotely?_외부 접속시(원격으로 접속시) root 로그인 가능 여부를 막을것인지? (개인적으론 y권장)

 > 4. Remove test database and access to it?_test 데이터베이스와 접속권한을 지울것인지?

 > 5. Reload privilege tables now?_권한 변경시 reload 할것인지?

 -- 잘 읽어보시고 보안설정하시면 될 것 같고, 잘 모르겠다 싶으면 모두 y를 권장합니다.

 --- 선택여부는 개인의 판단입니다. *보안을 위한 권장일 뿐이지, 강요는 아닙니다.

 

 

 - 설치 완료가 되었는지 root로의 로그인

sudo mysql -u root -p

 > 패스워드는 위에서 설정한 루트 암호를 넣어주시면 됩니다.

 ** sudo권한이 아닌 상태(mysql -u root -p의 경우) 에서 로그인을 하려다보면 "ERROR 1698 (28000) : Access denied for user 'root'@'localhost'"에러가 나므로, sudo권한을 꼭 넣어주셔야합니다.

 > 로그인 후 계정 생성은 Database 카테고리로..

 


[Ubuntu] ifconfig 설치하기

(리눅스 ip확인하기)


리눅스서버를 포맷하고 ifconfig를 사용하려고보니 패키지가 설치가 되어있지 않은 경우가 있어 작성합니다.

ifconfig를 통해 리눅스 서버의 ip를 확인할 수 있습니다.

 

 - update를 진행합니다. (필요시)

sudo apt update

 

 - net-tools 패키지 설치하기

 sudo apt install net-tools

 > 위 apt로 설치 진행이 되지 않을 경우 apt-get을 사용

sudo apt-get install net-tools

 

 

설치 후 콘솔창에 ifconfig를 치면 ip정보를 확인할 수 있습니다.

 


[Ubuntu] vim 설치


 

요즘 나오는 Ubuntu에는 기본적으로 vim이 설치되어 있는걸로 알고있습니다.

 

설치가 필요한 경우 참고하시면 됩니다.

 

 - update하기

sudo apt update

> apt-get을 사용하는 경우 (위 apt가 실행이 안되는 경우)

sudo apt-get update

 

 - vim 설치

sudo apt install vim

>apt-get을 사용하는 경우 (위 apt가 실행이 안되는 경우)

sudo apt-get install vim

 

 

 - 설치 확인

vim

 

 - vim을 이용하여 파일 수정하기

vim <파일명>

 

 - 기본적인 vim 사용법

  > 입력모드 i키(명령모드에서)

  > 입력모드 나가기(명령모드) ESC키

  > 저장 :w(명령모드에서)

  > vim 나가기 :q(명령모드에서)

  > vim 저장 후 나가기 :wq(명령모드에서)

  > vim 저장하지 않고 나가기 :q!(명령모드에서)

  > 문자열 찾기 /[찾을 문자열]

    -> n키로 다음 단어, N키로 이전 단어를 찾음

 

 


[Ubuntu] ssh서버 구축


기본적으로 우분투에 ssh 클라이언트는 설치되어 있는걸로 알고 있습니다. (openssh-client)

 

여기서 ssh 서버를 구축하기 위해서는 몇가지 설치과정을 거치면 서버로 활용이 가능합니다.

 

 

 - 실행 전 update 하기

sudo apt update

 

 

 - ssh 서버 설치

sudo apt install ssh

> 설치시 '이 작업은 *k바이트의 디스크 공간을 더 사용하게 됩니다. 계속 하시겠습니까? [Y/n]'이라는 문구가 나오면 y키를 누르고 엔터를 해주시면 됩니다.

 

 

 

 - ssh 서버 설정

sudo vim /etc/ssh/sshd_config

 > 저는 vim을 활용하기 때문에 vim이 설치되어 있지 않은 경우 vi를 사용하시면 됩니다.

sudo vi /etc/ssh/sshd_config

> 기본 port가 22로 되어있는데, 바꾸고싶은 port번호로 바꾸시거나, root 권한으로의 로그인이 가능하도록 설정을 변경할 수 있습니다.

 

 

 

 - ssh 서버 실행

sudo service ssh start

 

 

 

 - 클라이언트에서 ssh 서버로의 접속

ssh <계정id>@ssh서버ip주소 [-p port]

> 예시 : 

ssh karzin@192.168.0.1 -p 1234

 


[독서 계획]

2020년 1월 첫번째 3권


 

1. 페르미 추정 두뇌 활용법 - 에이지21

 - 장르 : 자기능력계발

 - 선택 이유 :

   > 예전 여러 검색을 하다가 얼핏 읽어본적이 있는 페르미 독서를 계획하면서 참고해보고 싶어 선택했습니다.

 - 읽기 전 느낌

   > 그냥 왠지 막연히 어려워보이네요

 

2. 어쩌면 별들이 너의 슬픔을 가져갈지도 몰라 - 위즈덤하우스

 - 장르 : 시모음집

 - 선택 이유 :

   > 드라마 도깨비를 보고 한번쯤은 읽어보고 싶다고 생각을 했던 책이었습니다.

   > 독서계획을 세우며 가장 먼저 생각난 책이기도 합니다.

 - 읽기 전 느낌 : 

   > 시는 걱정입니다. 저에게 있어 시가 맞을지를.. 글쓴이의 의도를 잘 파악할 수 있을지, 내 마음에 와닿을 수 있을지 많은 걱정은 되지만, 나름 노력해봐야겠습니다.

 

3. 지쳤거나 좋아하는게 없거나 - 강한별

 - 장르 : 삶/인생 에세이

 - 선택 이유 :

   > 막연히 책을 구입하자는 생각으로 온라인 서점에 접속했을 때 제목을 본 순간 지금의 저의 느낌을 표현하는것만 같았습니다.

   > 개인적으로 많은 생각을 하게되고 더 좋은 오늘의, 내일의 자신이 되기 위해 읽어보자는 생각으로 선택했습니다.

 - 읽기 전 느낌 :

   > 시일까 글일까. 본문을 살짝 훑어보았는데 시같기도 글같기도 한 문장들이 많이 보입니다. 저에게 많은 도움을 줄 수 있는 책이 되었으면 좋겠습니다.

 


[해결방법]

ssh 접속 에러

(REMOTE HOST IDENTIFICATION HAS CHANGED!)


 

간만에 서버로 돌리고 있던 컴퓨터를 포맷 후 ssh를 이용해 접속을 하려 하니 접속이 되지 않습니다.

 

REMOTE HOST IDENTIFICATION HAS CHANGED! 에러만 뿜고 접속이 되지 않는 경우인데요,

 

해당 에러는 간혹 서버로 돌리고 있던 PC를 시원하게 포맷했거나,

같은 IP주소로 다른 서버를 물려놨을 경우 생기게 됩니다.

 

이는 기존에 IP주소로 접속했던 서버의 ssh key가 남아있어 생기는 문제로,

변경된 서버로 접속하려는 자신의 데스크탑에 남겨져있던 기존 서버의 ssh key를 지워주시면 해결되는 문제입니다.

 

- ssh key 제거하기

ssh-keygen -R [ip주소]

 

이후 ssh를 통해 서버의 ip로 다시 접속하시면 문제없이 접속됨을 확인하실 수 있습니다.

+ Recent posts