1. mysql 설치
(django_site) ubuntu@ip-172-31-11-144:~/django_site$ sudo apt-get install mysql-server
그럼 주르륵 설치
2. mysql 실행 / mysql 접속 -> 비밀번호 입력
(django_site) ubuntu@ip-172-31-11-144:~/django_site$ sudo systemctl start mysql
(django_site) ubuntu@ip-172-31-11-144:~/django_site$ sudo /usr/bin/mysql -u root -p
Enter password:
2-1. 사용자 정보 확인 -> 사용할 계정 만들기 -> 다시 사용자 정보 확인하기
#사용자 정보 확인
mysql> SELECT User, Host, authentication_string FROM mysql.user;
+------------------+-----------+------------------------------------------------------------------------+
| User | Host | authentication_string |
+------------------+-----------+------------------------------------------------------------------------+
| debian-sys-maint | localhost | $A$005$?Q3|D(Ns[%ZCncHXKUlO1.THiDmuOpLg1i1IrETRGysUwWW.fPb5LcnU2 |
| mysql.infoschema | localhost | $A$005$THISISACOMBINATIONOFINVALIDSALTANDPASSWORDTHATMUSTNEVERBRBEUSED |
| mysql.session | localhost | $A$005$THISISACOMBINATIONOFINVALIDSALTANDPASSWORDTHATMUSTNEVERBRBEUSED |
| mysql.sys | localhost | $A$005$THISISACOMBINATIONOFINVALIDSALTANDPASSWORDTHATMUSTNEVERBRBEUSED |
| root | localhost | |
+------------------+-----------+------------------------------------------------------------------------+
5 rows in set (0.01 sec)
# 사용할 계정 만들기
mysql> create user '아이디'@'%' identified by '비밀번호';
Query OK, 0 rows affected (0.02 sec)
# 변경 사항을 바로 적용해주는 명령어
mysql> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.00 sec)
#사용자 정보 확인
mysql> SELECT User, Host, authentication_string FROM mysql.user;
+------------------+-----------+------------------------------------------------------------------------+
| User | Host | authentication_string |
+------------------+-----------+------------------------------------------------------------------------+
| jhj | % | $A$005$[zV[_ Zd+}t~[ parA3WVOR7yIxFC.MNDwUmqs0IcSyyiQjX8qC9GKo/1 |
| debian-sys-maint | localhost | $A$005$?Q3|D(Ns[%ZCncHXKUlO1.THiDmuOpLg1i1IrETRGysUwWW.fPb5LcnU2 |
| mysql.infoschema | localhost | $A$005$THISISACOMBINATIONOFINVALIDSALTANDPASSWORDTHATMUSTNEVERBRBEUSED |
| mysql.session | localhost | $A$005$THISISACOMBINATIONOFINVALIDSALTANDPASSWORDTHATMUSTNEVERBRBEUSED |
| mysql.sys | localhost | $A$005$THISISACOMBINATIONOFINVALIDSALTANDPASSWORDTHATMUSTNEVERBRBEUSED |
| root | localhost | |
+------------------+-----------+------------------------------------------------------------------------+
6 rows in set (0.00 sec)
[ privileges on . ] = 모든 DB에 권한주기
하고 나서 [ FLUSH PRIVILEGES; ] 하깅
mysql> grant all privileges on *.* to 'jhj'@'%';
Query OK, 0 rows affected (0.00 sec)
# 나가고
mysql> exit
Bye
# 아이디 변경해서 들어가기
(django_site) ubuntu@ip-172-31-11-144:~/django_site$ sudo /usr/bin/mysql -u jhj -p
Enter password:
2-2. 데이터 베이스 만들고 확인하기 !
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| sys |
+--------------------+
4 rows in set (0.01 sec)
# [ django_site ] 라는 데이터 생성하기
mysql> create table django_site;
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| django_site |
| information_schema |
| mysql |
| performance_schema |
| sys |
+--------------------+
5 rows in set (0.00 sec)
2-3. 그럼 새로 만든 테이블에 마이그레이션 하기
# django_site 테이블 쓰겠다구 선언하기
mysql> use django_site
Database changed
# 암것도 없음
mysql> show tables;
Empty set (0.00 sec)
3. settings.py 수정 (**파일 이름 헷갈리지 않기)
import pymysql
pymysql.install_as_MySQLdb()
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'databases이름',
'USER': '유저',
'PASSWORD': '비밀번호',
'HOST': 'localhost',
'PORT': '3306',
"OPTIONS": {"charset": "utf8mb4"},
}
}
<참고 하기>
https://blog.daum.net/billbo/52
[Django]mysql을 연결해보자.
우분투에 파이썬, 장고를 설치하고 장고 프로젝트를 생성하는 부분까지 진행한 것으로 하고 시작한다. mysql설치 sudo apt-get install mysql-server-5.7 한글설정 sudo vim /etc/mysql/my.cnf 에 다음을 추가해준..
blog.daum.net
https://bcdragonfly.tistory.com/27
[파이썬 장고] _mysql' is not defined 호환에러 해결하기
#ERROR version_info, _mysql.version_info, _mysql.__file__ NameError: name '_mysql' is not defined 파이썬 장고 환경에서 개발하다보면 상기의 에러를 보는 경우가 있다. 분명 mysqlclient 패키지를..
bcdragonfly.tistory.com
3-1. file zilla에 서버 접속 후 수정된 파일 업로드
3-2. python manage.py migrate
4. mysql 접속
mysql> use django_site
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Database changed
# 테이블 확인하기
mysql> show tables;
+----------------------------+
| Tables_in_django_site |
+----------------------------+
| auth_group |
| auth_group_permissions |
| auth_permission |
| auth_user |
| auth_user_groups |
| auth_user_user_permissions |
| common_mainappmodel |
| django_admin_log |
| django_content_type |
| django_migrations |
| django_session |
| pybo_answer |
| pybo_answer_voter |
| pybo_question |
| pybo_question_voter |
+----------------------------+
15 rows in set (0.00 sec)
데이터 생겼당 !
# 대표님이 해주고 옆에서 본거라 틀릴 수 있음
⚠️여기까지의 문제점⚠️
- Django settings.py 환경을 여러 개의 설정 파일로 분리하여 사용해서 복잡해짐
- 파일 이름 확인 안함 setting.py / settings.py
- settings.py 수정 안함 [ DATABASEA = . . .]
4-1. python manage.py runserver 서버 실행
(django_site) ubuntu@ip-172-31-11-144:~/django_site$ python manage.py runserver 0.0.0.0:8000
Watching for file changes with StatReloader
Performing system checks...
System check identified some issues:
WARNINGS:
?: (staticfiles.W004) The directory '/static' in the STATICFILES_DIRS setting does not exist.
System check identified 1 issue (0 silenced).
April 25, 2022 - 17:56:12
Django version 4.0.4, using settings 'config.settings'
Starting development server at http://0.0.0.0:8000/
Quit the server with CONTROL-C.
WARNINGS:
?: (staticfiles.W004) The directory '/static' in the STATICFILES_DIRS setting does not exist.'
보면 [ static ] 경로 지정해주기
⚠️문제점 해결⚠️
원래 [ django_site ] 폴더 안에 [ static ]이 있었는데
파일 경로를 변경해주어
# 8000
(django_site) ubuntu@ip-172-31-11-144:~/django_site$ python manage.py runserver 0.0.0.0:8000
Watching for file changes with StatReloader
Performing system checks...
System check identified no issues (0 silenced).
April 25, 2022 - 17:59:47
Django version 4.0.4, using settings 'config.settings'
Starting development server at http://0.0.0.0:8000/
Quit the server with CONTROL-C.
[25/Apr/2022 17:59:50] "GET / HTTP/1.1" 200 4409
[25/Apr/2022 17:59:50] "GET /static/style.css HTTP/1.1" 200 85
[25/Apr/2022 17:59:50] "GET /static/jquery-3.4.1.min.js HTTP/1.1" 200 88147
[25/Apr/2022 17:59:50] "GET /static/bootstrap.min.css HTTP/1.1" 200 162023
Not Found: /favicon.ico
# 80
(django_site) ubuntu@ip-172-31-11-144:~/django_site$ sudo /home/ubuntu/anaconda3/envs/django_site/bin/python manage.py runserver 0.0.0.0:80
Watching for file changes with StatReloader
Performing system checks...
System check identified no issues (0 silenced).
April 25, 2022 - 18:02:48
Django version 4.0.4, using settings 'config.settings'
Starting development server at http://0.0.0.0:80/
Quit the server with CONTROL-C.
[25/Apr/2022 18:02:55] "GET / HTTP/1.1" 200 4409
[25/Apr/2022 18:02:55] "GET /static/style.css HTTP/1.1" 200 85
[25/Apr/2022 18:02:55] "GET /static/jquery-3.4.1.min.js HTTP/1.1" 200 88147
[25/Apr/2022 18:02:55] "GET /static/bootstrap.min.css HTTP/1.1" 200 162023
Not Found: /favicon.ico
서버 실행해서 구글 검색창에 아이피 검색하면 ! 끝 !
'Others > Ubuntu and Linux' 카테고리의 다른 글
(Ubuntu) Django + Gunicon + Nginx 연동하기 (2) (0) | 2022.04.28 |
---|---|
(Ubuntu) 도메인 하기 (0) | 2022.04.26 |
(Ubuntu) Django + Gunicon + Nginx 연동하기 (1) (0) | 2022.04.26 |
(Ubuntu) 기존 장고프로젝트 DB 연동하기 (0) | 2022.04.26 |
(Ubuntu) You must set settings.ALLOWED_HOSTS if DEBUG is False. 오류 해결 (0) | 2022.04.22 |