-
서버 이관을 해보자 - 1. mysql개발/개발관련 2020. 10. 21. 15:59
0. 서버세팅을 해보자
서버를 하나 받았다. 기존에 오래된 서버를 새로운 서버로 옮겨야한다.
보안팀에서 아파치, 톰캣, mysql은 설치만 해서 주었다.1. mysql 내 로컬에서 db툴로 접속해보기
root계정으로 접속한다.
mysql 실행 - mysql 깔린 폴더에 bin 폴더로 이동한다.> mysql -- accesss denied for user root~~~ 이런 에러는 비밀번호를 같이 입력해야 접속이 된다는 뜻이다. > mysql -p -- -p를 붙이면 비밀번호를 입력하라고 나온다. mysql 계정의 비번을 입력하면 cmd창에 mysql>이라고 나오면 성공!
이렇게 서버 로컬에서 mysql 접속은 성공했는데 내 로컬에서 접속을 테스트 해봐야한다.
그런데... host is not allowed to connect to this mysql server 라는 에러가 발생하면서 연결이 안된다.
내 로컬과 디비 서버에 연결이 뭐가 안되는 것인지 확인을 해야한다.
포트가 열려있는가 -> 정보보안팀에 확인할 결과 열려있고 netstat -tnlp 확인결과도 열려있다.
위 에러를 구글링 해본 결과 mysql은 기본적으로 로컬에서만 접속 가능하도록 되어있다고한다. 그래서 별도의 설정을 해줘야 원격 접속이 가능하다.
-- 1. root 접속권한 확인 mysql> select host, user from mysql.user; -- host에 localhost, user에 root가 뜨는 것을 확인 할 수 있다. -- 2. 원격접속허용 -- 원격 유저 생성(개발서버이기때문에 원격유저 생성은 안할것이다. 하고싶으면 맡에와 같은 명령어를 입력하면된다.) mysql> create user '사용자'@'localhost' identified by '비밀번호'; -- 모든 ip 허용 mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '패스워드'; -- 특정 ip, ip 대역만 허용하고 싶다면 아래 사이트에 들어가면 나와있다. -- https://zetawiki.com/wiki/MySQL_%EC%9B%90%EA%B2%A9_%EC%A0%91%EC%86%8D_%ED%97%88%EC%9A%A9 -- 3. 모든 ip 허용한 경우 원상 복구 mysql> DELETE FROM mysql.user WHERE Host='%' AND User='아이디'; mysql> FLUSH PRIVILEGES;
내 로컬 디비 툴에서 접속이 잘 되는지 다시 확인해보면 접속이 잘 된다!
2. 구서버에서 신서버로 디비 복사하기
디비 백업받는건 많이 나오니까 패스. 나는 로컬에 백업받은 자료들이 있어서 파일질라로 옮겨서 넣어주려했는데... 접속이 안된다.
정확히 말하자면 root계정으로 접속이 안된다.찾아보니 sshd_config파일을 수정해줘야한다.
vi /etc/ssh/sshd_config
PermitRootLogin yes 로 변경하고 저장후 재시작한다.
-- 재시작 service sshd restart
그러고 다시 파일질라에서 root 계정으로 접속하면 접속도되고 파일도 주고받을 수 있다.
mysql 설치 위치에서 bin폴더 밑에서 아래 명령어를 실행하면 된다.
> mysqldump -u아이디 -p 디비명 < 파일명.sql;
그러면 비밀번호 입력하면 디비데이터들이 잘 들어간다
만약에 잘 안들어간다면 sql 파일을 열어서 구서버의 내용이 있는지 검색해보고 수정해주어야한다.
디비 확인하면 끝~!
728x90'개발 > 개발관련' 카테고리의 다른 글
서버 이관을 해보자 - 2. apahce + multi tomcat (아파치에 여러 톰캣 연동) (1) 2024.07.22 panolens, threejs 버전 업데이트 삽질 기록 (0) 2024.07.22 Web AR (0) 2020.10.13 letsencrypt challenge failed for domain 에러 (0) 2020.09.24 Gradle + tomcat + firebase + vuejs (1) (0) 2020.09.07