MySQL 7

Cannot proceed because system tables used by Event Scheduler were found damaged at server start

mysql에서 이벤트 스케줄러를 만들려고 하는데 위의 에러가 나왔습니다. 해결법을 찾아보았는데 모든 사람들이 아래의 명령어를 치라고 합니다. 이 명령어는 mysql 프로그램을 업데이트 하는 것이 아닌, mysql 테이블을 업데이트 하는 명령어입니다. 이 명령어를 사용하기 위해서는 mysql이 시스템상에 올라와 있어야 합니다.(동작 중 이어야 합니다.) mysql_upgrade --force -u root -p 이 명령어를 치면 mysql 테이블을 업데이트하여 에러를 해결해 줍니다. 이 명령어를 실행하고, restart를 해줍니다.

DB/mysql(mariaDB) 2023.01.25

MySQL 1419 error - "You do not have the SUPER privilege and binary logging is enabled"

이 문제는 트리거 등을 다른 DB로 옮길때 발생한 에러입니다. 이를 해결하기 위해서는 log_bin_trust_function_creators 를 1로 바꾸어주면 됩니다. mysql 에 root 로 접속하여 아래 내용을 쳐주시면 됩니다. set global log_bin_trust_function_creators=1; mysql을 restart 했을 때 설정값이 초기화 되신 분들은 아래 내용을 참조해주세요 2023.01.25 - [DB/mysql(mariaDB)] - Mysql Event Not Working Mysql Event Not Working mysql 이관작업 중 전의 서버에서 작동하던 이벤트가 작동을 안 하는 문제점이 있었습니다. 이는 mysql 버전이 달라 이벤트가 적동하도록 세팅을 해주어..

DB/mysql(mariaDB) 2023.01.18

공공데이터포털 데이터를 mysql에 넣기

일단 기상청 데이터를 받아오기 위해 공공데이터 포털에 접속하여 회원가입과 로그인을 합니다. https://www.data.go.kr/index.do 공공데이터 포털 국가에서 보유하고 있는 다양한 데이터를『공공데이터의 제공 및 이용 활성화에 관한 법률(제11956호)』에 따라 개방하여 국민들이 보다 쉽고 용이하게 공유•활용할 수 있도록 공공데이터(Datase www.data.go.kr 1. 로그인 후 활용신청을 눌러줍니다. 2. 활용 승인이 나오면 아래 창을 참조합니다. 1) 참조 문서를 참조 하여 원하는 곳의 x,y 좌표를 확인합니다. 2) 일반 인증키를 복사합니다. 3) 초단기 실황조회의 확인 버튼을 누릅니다. 3. 아래 창에 값을 넣고 미리보기를 누릅니다.(servicekey는 복사한 키입니다.) 4..

python/도구 2022.08.09

두 날짜의 차이값 계산 함수(TIMESTAMPDIFF)

TIMESTAMPDIFF(단위, 날짜 1, 날짜 2) 순서로 사용합니다. 이 함수는 날짜 2 - 날짜 1 의 값을 단위로 표현해준다. SECOND : 초 MINUTE : 분 HOUR : 시 DAY : 일 WEEK : 주 MONTH : 월 QUARTER : 분기 YEAR : 연 참조 : https://extbrain.tistory.com/78 [MySQL] 날짜 차이 가져오기 (DATEDIFF, TIMESTAMPDIFF 함수) ▶MySQL 날짜 차이 가져오기 (DATEDIFF, TIMESTAMPDIFF 함수) ▶설명 MySQL에서 두 날짜간의 차이를 가져올 때 사용하는 함수가 두 가지가 있습니다. 단순히 일 차이를 가져올 때 사용하는 것이 DATEDIFF 함수 extbrain.tistory.com

DB/mysql(mariaDB) 2022.05.25

2. spring mysql DB연결(maria DB)

처음 프로젝트를 생성하면 아래 사진과 같이 여러 폴더와 pom.xml파일이 생성된 것을 확인할 수 있습니다. mysql, oracleDB, mariaDB, log4j 등의 프로그램을 사용하려면 pom.xml파일을 수정해 주어야 합니다. 기본 전체코드가 아래 나와있습니다. 여기서 알 수 있듯 mysql, oracleDB, log4j가 기본으로 들어가 있습니다. ... mysql mysql-connector-java 5.1.31 ... 저는 mysql만 사용하므로 146줄부터 나오는 mysql설정의 주석을 풀었습니다. 이제 DB에 연결하는 context-datasource.xml파일을 고쳐주면 됩니다. 경로는 아래 사진과 같습니다.(또는 ctrl + shift + r 로 파일검색기능을 사용할 수 있습니다.)..

4. DB만들기

전편까지 DB 설계와 연결까지 하였다면, 이번에는 DB를 만들어볼 시간입니다. 일단 DB연결 프로그램을 엽니다. 일반적으로 php는 phpMyAdmin을 사용하지만, 저는 sql을 직접 날리기 위해 sequel연결툴을 씁니다.(윈도우는 hiedisql이 좋습니다.) 1. 테이블 만들기 저번편까지 외부에서 접근이 가능한 유저와 DB를 만들었으므로, 저번에 만든 유저와 DB로 접근하여 테이블을 만듭니다. 꼭 SQL을 사용하여 테이블을 안 만들고, heidisql을 사용하여 테이블을 생성하여도 됩니다. (이 방법이 더 쉽고 간편하므로 이 방법을 선호합니다.) 1) User table CREATE TABLE User ( idx int primary key, Id varchar(255) NOT NULL, Pass..

3. 앱에 필요한 DB설계

내가 만들고자 하는 앱은 회원가입, 로그인, 글 작성, 댓글 관리, 글 읽기 등의 활동을 할 수 있는 앱입니다. 회원가입, 로그인을 위해 유저 테이블 생성 글 목록을 위해 글 목록 테이블 생성 댓글 관리를 위한 댓글 테이블 생성 여기서 설계가 들어갑니다. 글 목록을 만들기 전에 글 테이블 3개를 한번에 묶어 사용할지,테이블 3개로 나누어 사용할지 생각해보아야 합니다. 한번에 묶어 사용하면 sql을 날리기 편하고, 관리할 테이블의 수가 줄어듭니다. 하지만 sql의 속도가 늦어지고, 테이블 내부의 관리가 힘듭니다. 3개로 나누어 설계하면 속도가 빠르고, 테이블 내부 관리는 쉬워집니다. 하지만 sql을 날리기 어려워지고, 관리할 테이블의 수가 늘어납니다. 저는 처음에 앱을 들어왔을 경우, 글 목록이 빠르게 떠..