😎 Github-action에서 디버깅
📖 마이그레이션
python manage.py migrate
파이썬에서 데이터베이스가 변경이 되면 마이그레이션을 해줘야 한다.
마이그레이션 후 데이터베이스를 새로고침하면 해당 db에 테이블이 생성됨을 확인할 수 있다.
마이그레이션의 필요성?
소스코드를 git에서 관리하듯이 데이터베이스를 관리는 마이그레이션으로!
마이그레이션은 변경이력을 저장하므로 유용하다!
🔎 ssh 키 생성하기
# ssh 키 생성하기
(windows는 git bash로 ssh연결한다.)
ssh-keygen -t rsa - 입력창은 Enter로 패스!
- git bash에 있던 경로에서 id_rsa.pub 메모장으로 열어서 내용 복사하기.
# github에서 ssh키 추가하기
- github -> setting에서 ssh키 추가하기(위의 과정에서 복사한 내용 붙여넣기)
# ssh에 들어가기
github-action의 workflows에서 tmate session의 ssh ~~~.tmate.io 부분 붙여넣고 바로 이어서 -i ~/.ssh/id_rsa 입력
ssh Lp6dLg9S6uQ8ntmSSJjR4mWVv@sfo2.tmate.io -i ~/.ssh/id_rsa 입력 후 yes
ssh fzWj2TKUMgmD6b7TK54Bmmycf@sfo2.tmate.io -i ~/.ssh/id_rsa
🔎 파이참에서 github-action 내부 들어가기
- 파이참에서 ssh붙여넣기 Enter, 안내문구 나오면 ctrl+C (continue, 안내메시지 건너뛰기)
- ls 입력하면 github action 내부로 들어간다.
🔎 mysql 켜고 확인하기
< mysql 서비스 상태 확인 >
그대로 sudo systemctl status mysql 입력
(화면에서는 inactive(dead) 서비스 꺼진 상태, 다시 켜줘야함)
< mysql 켜기 >
sudo systemctl start mysql (다시 status 조회하면 active상태)
< mysql 접속 >
mysql -uroot -proot (기본 root계정 비번은 root)
< root 비밀번호 변경 >
(mysql안에 mysql데이터베이스가 있고 계정정보등이 default값으로 들어있다.)
1. use mysql;
2. FLUSH PRIVILEGES; 계정정보 변경이 FLUSH 해줘야 반영
3. ALTER USER 'root'@'localhost' IDENTIFIED BY '12345'; Alter구문으로 계정정보 입력
4. exit;
계정이 잘 변경되었는지 확인하려면 mysql -uroot -p12345 p다음 비밀번호 입력
🔎 시간대 수정하기
시간대 수정할 때는 mysql exit; 후 경로에 코드입력, SELECT NOW();는 mysql에 입력.
- SELECT NOW(); 입력 후 현재 국가시간과 불일치한지 확인
- Asia/Seoul 시간으로 변경
sudo rm /etc/localtime
sudo ln -s /usr/share/zoneinfo/Asia/Seoul /etc/localtime
- 시간대 변경 코드 입력 후 mysql재시작 해야 반영된다.
sudo systemctl start mysql
🔎 데이터베이스 연결
< 데이터베이스 생성 >
- CREATE DATABASE 'db명'; ( 예시: CREATE DATABASE sparta; )
- exit;
< 데이터베이스 확인하고 서버 실행하기 >
- ls 와 cd 를 입력하여 데이터베이스 확인한다.
- poetry run python manage.py runserver 입력
- Finally 장고서버 연결 성공!
# 오류/문제
ssh다시 접속하려고 했을 때 들어갈 수 없는 문제 발생.
다시 ssh안에 들어가서 모든 설정 차근히 해보니 해결이 되었다.
github-action도 다시 run해보고 docker-desktop 컨테이너도 확인해보고 코드를 차근차근 입력해보았다.
몇번의 반복이 있긴 했지만 일시적인 오류가 아니었을까 추측해본다.
'💻 개발블로그 > django' 카테고리의 다른 글
Django심화강의:2주차(03)(20220215) (0) | 2022.02.16 |
---|---|
Django심화강의:2주차(02)(20220215) (0) | 2022.02.15 |
Django심화강의:1주차(10)(20220213) (0) | 2022.02.14 |
Django심화강의:1주차(9)(20220213) (0) | 2022.02.13 |
Django심화강의:1주차(8)(20220211) (0) | 2022.02.12 |