본문 바로가기

Language/mySQL14

MySQL 오류정리 :: 1. Error Code: 1034 Index for table 'global_priv' is corrupt; try to repair itError Code: 1034 Index for table 'global_priv' is corrupt; try to repair it - 관련 링크 : https://www.digitalocean.com/community/tutorials/how-to-fix-corrupted-tables-in-mysql - 관련 링크: https://stackoverflow.com/questions/57128891/how-repair-corrupt-xampp-mysql-user-table #1. 원인 때때로 MySQL의 테이블들은 손상될 수 있는데, 해당 오류의 내용은 해당 테이블의 데이터를 읽을 수 없게 되었기 때문이다. 그 원인으로서는 하기 이유들이 있을 수 있다. 관련링크 원문 Some common causes of corrupted tables are: The MySQL server stops in middle of a write. An ext.. 2021. 8. 13.
공부 내용 정리 mySQL :: 트랜잭션(Transaction) Transaction 출처 관련 링크1 tistory.blog 관련 링크2 tistory.blog 관련 링크3 tistory.blog 관련 링크4 tistory.blog 관련 링크5 tistory.blog 관련 링크6 tistory.blog 관련 링크7 tistory.blog 1. Transaction 이란? 트랜잭션(Transaction)의 사전적 의미는 거래이고, 컴퓨터 과학 분야에서의 트랜잭션(Transaction)은 "더이상 분할이 불가능한 업무처리의 단위"를 의미한다. 이것은 하나의 작업을 위해 더이상 분할될 수 없는 명령들의 모음, 즉, 한꺼번에 수행되어야 할 일련의 연산모음을 의미한다. 이해를 위하여 다음의 상황을 보자. - 다음과 같은 상황이 있다고 가정하자. 1. 타국에서 유학을 하고 있.. 2021. 7. 31.
공부 내용 정리 mySQL :: 기초 VII # 사용자 권한 사용자에 따라서 데이터베이스 그리고 테이블에 접근할 수 있는 권한 혹은 사용할 수 있는 기능을 제한하도록 하는 기능이 사용자 권한이다. 이 때 사용하는 명령어는 다음과 같다. GRANT 권한 ON 데이터베이스, 테이블 TO `아이디@호스트` IDENTIFIED BY '비밀번호' 상기 코드에 있어서 권한이란, 데이터베이스를 편집하고 생성하고 삭제하는 등의 행위에 대한 권한 등을 의미한다. 그러한 권한 혹은 기능을 어떠한 데이터 베이스에 실행할 것인가를 지정할 수 있도록 설계되어있다. 그리고 그렇게 설계된 기능을 사용할 수 있는 아이디와 비밀번호를 TO 뒤에 입력하여 저장하도록 구성된 코드이다. # 사용자 제한 상기 코드블럭의 TO 이하는 데이터 베이스 서버에 접속하는 사용자를 제한하는 용도.. 2021. 5. 22.
공부 내용 정리 mySQL :: 초급 I # Join 초급 기초에서 다루었던 Join의 내용을 토대로, 자세한 내용을 학습하였다. JOIN이란, 여러개의 표로 분산된 정보를 결합해서 하나의 단일한 표로 만드는 기술이 바로 JOIN이다. JOIN의 학습에 앞서, 데이터에 관하여 짤막한 사족을 붙이자면, SQL이건, 데이터이건 무언가 자료에 혹은 코딩에 중복이 발생한다는 것은 상당히 안좋은 징후가 있다는 것을 암시한다. 따라서 작성하고 있는 무언가에 대해 개선이 필요하다는 것을 의미하는 것이다. 여러 정보를 담고 있는 데이터 베이스를 효율적으로 관리하기 위해서는 데이터간의 체계와 관계를 구성이 절대적으로 필요하다. 상기와 같은 예로서 거대한 데이터베이스를 운용함에 있어 중복되는 내용이 발생하면, 같은 수정이 반복되어 발생할 필요가 생기고 그렇게 된.. 2021. 5. 22.
공부 내용 정리 mySQL :: 예제 정리 4 # a6 DB 삭제/생성/선택 DROP DATABASE IF EXISTS `a6`; CREATE DATABASE `a6`; USE `a6`; # 부서(홍보, 기획) CREATE TABLE `dept` ( `id` INT(10) UNSIGNED NOT NULL AUTO_INCREMENT, PRIMARY KEY(id), `name` CHAR(5) NOT NULL, regDate DATETIME NOT NULL ); INSERT INTO dept SET `name` = '홍보', regDate = NOW(); INSERT INTO dept SET `name` = '기획', regDate = NOW(); INSERT INTO dept SET `name` = 'IT', regDate = NOW(); # 사원(홍길.. 2021. 5. 20.
공부 내용 정리 mySQL :: 기초 VI # Join 데이터베이스는 하나의 테이블로 끝나는 것이 아니라 여러가지 테이블을 추가하여 저장하고 관리하는 것이 일반적이다. 데이터의 규모가 거대해지면 하나의 테이블로서 정보를 수용하고 관리하는 것이 어려워지기 때문이다. 따라서 테이블을 분할하고 테이블간의 관계성을 부여하기 위하여 사용되는 것이 바로 join이다. 테이블을 분할하고 join을 이용하여 분할된 데이터를 하나의 데이터처럼 연동하여 이용할 수 있는 방법은 다음과 같다. DROP TABLE IF EXISTS `student`; CREATE TABLE `student` ( `id` tinyint(4) NOT NULL, `name` char(4) NOT NULL, `sex` enum('남자','여자') NOT NULL, `address` varch.. 2021. 5. 19.