11월 1일

Yullgiii·2023년 11월 1일
0
post-thumbnail

내일 배움 캠프

와 MySQL설치과정에 에러가 너무 심하게 나서 어질어질하다..

MySQL에러 해결과정

mysql.server start                               ok | 4m 33s | 09:05:21 PM
Starting MySQL
... ERROR! The server quit without updating PID file (/opt/homebrew/var/mysql/

라는 에러가 처음 발생을 했다...서버를 시작하는데
이 에러가 발생을 하니 여러가지의 방법들이 있었다..
우선 여기서 보이는 문제점들이 여러개였는데 가능성을 짚어보자

1.권한 문제: MySQL 서버가 PID 파일을 작성할 디렉터리에 대한 쓰기 권한이 없는 경우

그 경우를 먼저 우선으로 두고 해결을 해보려고 했다.
그래서 사용자 지정을 위해

sudo chown -R _mysql:_mysql /opt/homebrew/var/mysql

을 입력해줬는데도 이런젠장...어림없지
다시 오류 파일들을 살피는데 디렉터리 권한이 아직 없는거 같아서 권한을 주기위해 변경을 했다

sudo chmod -R 775 /opt/homebrew/var/mysql

이런식으로 하니 허허 아직 되질않는다..
진짜 마음같아서는 그냥 삭제하고 재설치하고싶은데 그러면 안되지않겠는가....노력해봐야지
되질 않으니 다음으로 넘어가보자고????

2.이전 MySQL 서버 인스턴스 문제: 이전에 실행되었던 MySQL 서버 인스턴스가 제대로 종료되지 않아 PID 파일이 삭제되지 않은 경우

순서대로 진행을 해보자 우선 예전에 설치된게있을수있거나 아니면 이미 실행중일수있잖아???
그래서 ps aux | grep mysql로 실행중인 프로세스를 찾고 kill -9명령어로 종료를 해준다!
그 뒤로는 PID파일을 삭제해주고 다시 해야하기에 rm /usr/local/mysql/data/mysqld.local.pid를 입력해줌으로서 작업은 완료가 되었고
다시금 시작을 해주는데!!!!!!

Starting MySQL
... ERROR! The server quit without updating PID file 

어림도 없지...마지막 방법 시도해봐야겠다..사실 이 마지막방법을 제일 처음 시도해봤어야 하는건 아닐까한다...젠장...

3. PID 파일 경로 문제: MySQL 서버는 PID 파일을 업데이트하지 못해 발생

ps aux | grep mysqld우선 다시금 서버가 실행중인걸 확인해주는 명령어로 시작한다.
그뒤에는 실행중이기에 종료를 해주었다...sudo killall kill -9 (내컴터)
그리고 PID파일이 존재하는지 확인하고 삭제를 해주고!!!sudo rm /opt/homebrew/var/mysql/*.pid
mysql.server start다시 시작해주니
Holy Moly과카몰리...성공했다...드디어 이 지옥에서 빠져나올수있었다...
그뒤로는 뭐 비밀번호 설정해주고 기타 간단한 설정을 마쳐줌으로서 MySQL설치 완료!!!!!!!!!!!!

다시금 강의를 들으러 가보자고

MVC!!

중요사항!경로는 중복이 가능하나 메서드는 중복이 불가하다!!!!
메모와 기억해두기

@RequestMapping("/api")

이친구 요물이구만????

    @GetMapping("/api/hello")
    @ResponseBody
    public String hello() {
        return "Hello World!";
    }

원래는 이렇게 생긴친구에서 저기 위에 리퀘스트를 달아주면 엄청난 일이 생긴다구!
저녀석이 있는한 /api부분을 달아줄 필요가없는거지!저 요청은 무조건 그 뒷부분을 불러오니까!!!
그래서 수정이 되면 @GetMapping("/hello")이렇게만 해줘도 정상작동을 하는것이였던 것이였다!!!!

Path Variable과 Request Param

전혀 모르는 개념이다...
Path Variable : 서버에 보내려는 데이터를 URL 경로에 추가
Request Param : 서버에 보내려는 데이터를 URL 경로 마지막에 ? 와 & 를 사용하여 추가

SQL

DDL : ‘Data Definition Language’ 의 약자로 테이블이나 관계의 구조를 생성하는데 사용
DML : ‘Data Manipulation Language’ 의 약자로 테이블에 데이터를 검색, 삽입, 수정, 삭제하는데 사용(가장 많이 사용될예정이다!!!!!!!!!!!)

1주차 숙제하기

👉 수강생을 관리하는 MANAGER 테이블을 만들어보세요.

  • 컬럼은 총 id, name, student_code 입니다.
  • id는 bigint 타입이며 PK입니다.
  • name은 최소 2자 이상, varchar 타입, not null 입니다.
  • student_code는 STUDENT 테이블을 참조하는 FK이며 not null 입니다.
  • FK는 CONSTRAINT 이름을 ‘manager_fk_student_code’ 로 지정해야합니다.

이러한 문제가 나왔는데 위의 조건들만 다 지키며 작성을 하면 되는것이기 떄문에

CREATE TABLE MANAGER ( //생성해주고
    id BIGINT PRIMARY KEY, //id 형식받아주고
    name VARCHAR(255) NOT NULL CHECK (LENGTH(name) >= 2),
     student_code varchar(255) not null//name은 최소 2자 이상, varchar 타입, not null을 요구사항대로 작성
    CONSTRAINT manager_fk_student_code FOREIGN KEY (student_code) REFERENCES STUDENT(student_code)
);

2주차 강의 시작

2주차 강의를 듣던중 IoC와 DI 의 개념을 확실히 잡고가는게 좋을거같아서 좀 멈추고 오늘 했던것들을 정리를 하면서 오늘을 마무리하기로했다...

회고

허리가 아파온다 이제 슬슬 같은 자세 같은공간 조금씩 아파오는것들이 존재한다...
하지만 어쩌겠는가 난 걸음이 느린걸 꾸준하게 가면서 확실하게 잡고가자는 마음으로 가는중이다!!!

profile
개발이란 무엇인가..를 공부하는 거북이의 성장일기 🐢

0개의 댓글