사용자 도구

사이트 도구


wiki:database:mariadb

차이

문서의 선택한 두 판 사이의 차이를 보여줍니다.

차이 보기로 링크

양쪽 이전 판 이전 판
다음 판
이전 판
wiki:database:mariadb [2020/12/08 18:30]
hylee
wiki:database:mariadb [2023/07/11 14:09] (현재)
r_kimmk
줄 1: 줄 1:
-====== MariaDB ======+====== Mysql / MariaDB ======
 <WRAP left notice 80%> <WRAP left notice 80%>
   * description : MariaDB, Mysql 관련 자료 정리   * description : MariaDB, Mysql 관련 자료 정리
줄 11: 줄 11:
   * 대소문자 주의하는 것에 대해 고민하자   * 대소문자 주의하는 것에 대해 고민하자
  
 +===== FAQ =====
 +  *  사용자 패스워드 변경하기
 +  * dbSpider 수집 데이터 한글이 깨질 때 characterEncoding=UTF-8 추가
 +<code bash>
 +jdbc:mysql://202.20.99.10:3306/wwwhome?autoReconnect=true&useUnicode=true&characterEncoding=UTF-8
 +</code>
 ===== 시작/종료 ===== ===== 시작/종료 =====
 CentOS7 CentOS7
줄 30: 줄 36:
 [[http://myblog.opendocs.co.kr/archives/1710|[Project :: Server] MariaDB 백업설정 및 데이터 이관]] \\ [[http://myblog.opendocs.co.kr/archives/1710|[Project :: Server] MariaDB 백업설정 및 데이터 이관]] \\
  
-===== mysql db =====+ 
 +===== 사용자 관리(생성, 조회, 수정, 삭제) ===== 
 + 
 +==== Mysql DB ====
 user table 사용자 추가 user table 사용자 추가
  
줄 54: 줄 63:
 </code> </code>
  
-===== Maria DB ===== +==== Maria DB ==== 
-==== 사용자 생성 ====+사용자 생성
 <code bash> <code bash>
 MariaDB [(none)]> create user '${User }'@'${Host }' identified by '${Password }'; MariaDB [(none)]> create user '${User }'@'${Host }' identified by '${Password }';
줄 83: 줄 92:
 </code> </code>
 Tip : 권한 바꾸고 쿼리로 데이터를 수정하고 등록했던 모든 것을 메모리에 올리는 개념. 마지막에 꼭 해주는 것이 좋다. \\ Tip : 권한 바꾸고 쿼리로 데이터를 수정하고 등록했던 모든 것을 메모리에 올리는 개념. 마지막에 꼭 해주는 것이 좋다. \\
- +\\ 
- +링크 
 +  * [[https://jang2r.tistory.com/41|개발노트 :: MySQL 사용자 권한 확인 및 추가]] 
 +  * [[https://m.blog.naver.com/star_breeze/221692010850|MariaDB 10.4 부터 변경된 user 테이블]] 
 +\\
 ==== LOCK, UNLOCK ==== ==== LOCK, UNLOCK ====
  
줄 97: 줄 108:
 [[https://mariadb.com/kb/en/account-locking/|Account Locking]] \\ [[https://mariadb.com/kb/en/account-locking/|Account Locking]] \\
  
-==== 쿼리 대소문자 구분 ====+==== 쿼리 대소문자 구분 😒====
 Windows에서는 잘 되던 것이 리눅스 환경으로 배포하면 가끔 테이블을 못 찾는다는 에러가 뜬다. ''Table ${Table name} doesn't exist'' \\ Windows에서는 잘 되던 것이 리눅스 환경으로 배포하면 가끔 테이블을 못 찾는다는 에러가 뜬다. ''Table ${Table name} doesn't exist'' \\
 그 이유는 \\ 그 이유는 \\
줄 107: 줄 118:
   * mariadb를 기본 설치했다면 ''/etc/my.cnf'' 파일에 ''lower_case_table_names = 1''를 추가해야 된다. \\   * mariadb를 기본 설치했다면 ''/etc/my.cnf'' 파일에 ''lower_case_table_names = 1''를 추가해야 된다. \\
  
-^  value  ^                                                                                                                                                                              meaing ^ +^  value  ^  meaing                                                                                                                                                                             
-| 0       | CREATE TABLE 이나 CREATE DATABASE 실행시 디스크에 저장되는 테이블과 데이타베이스의 이름을 대소문자를 구분해서 생성한다.\\ SELECT 나 Insert 사용시에도 대소문자를 구분해서 사용해야 한다. 대소문자를 구별하는 OS 에서만 의미가 있고 Windows/Mac OS X 에 는 적용되지 않는다 +      | CREATE TABLE 이나 CREATE DATABASE 실행시 디스크에 저장되는 테이블과 데이타베이스의 이름을 대소문자를 구분해서 생성한다.\\ SELECT 나 Insert 사용시에도 대소문자를 구분해서 사용해야 한다. 대소문자를 구별하는 OS 에서만 의미가 있고 Windows/Mac OS X 에 는 적용되지 않는다 
-| 1       | 테이블과 DB 이름을 소문자로 생성하며 참조시에는 소문자로 변경하여 처리한다. 기존에 대문자가 포함되어 생성한 테이블과 DB 는 문제가 될 수 있다.                                                                                                 | +      | 테이블과 DB 이름을 소문자로 생성하며 참조시에는 소문자로 변경하여 처리한다. 기존에 대문자가 포함되어 생성한 테이블과 DB 는 문제가 될 수 있다.                                                                                                 | 
-| 2       | CREATE TABLE 이나 CREATE DATABASE 실행시 디스크에 저장되는 테이블과 데이타베이스의 이름을 대소문자를 구분해서 생성한다.\\ 참조시에는 소문자로 변경한다. 대소문자를 구분하지 않는 파일 시스템을 가진 OS(Mac OS X) 에서만 동작한다.                                  |+      | CREATE TABLE 이나 CREATE DATABASE 실행시 디스크에 저장되는 테이블과 데이타베이스의 이름을 대소문자를 구분해서 생성한다.\\ 참조시에는 소문자로 변경한다. 대소문자를 구분하지 않는 파일 시스템을 가진 OS(Mac OS X) 에서만 동작한다.                                  |
  
 \\ \\
줄 117: 줄 128:
 생성한 다음 dump 파일을 넣어 주면 된다. 생성한 다음 dump 파일을 넣어 주면 된다.
  
 +===== 인덱스 관리 (생성, 조회, 삭제) ===== 
 +<code sql> 
 +// 조회 (SHOW INDEX FROM 테이블명) 
 +$> SHOW INDEX FROM HEQMS.TB_HFDMS2_STD_CMPTN_SD; 
 +// 삭제 (ALTER TABLE 테이블명 DROP INDEX 인덱스명) 
 +$> ALTER TABLE HEQMS.TB_HFDMS2_STD_CMPTN_SD DROP INDEX IX_TB_HEQMS2_STD_JOB_CMPTN_SD_01; 
 +// 생성 (CREATE INDEX 인덱스명 ON 테이블명 (필드명 리스트)) 
 +$> CREATE INDEX IX_TB_HFDMS2_STD_CMPTN_SD_01 using BTREE ON TB_HFDMS2_STD_CMPTN_SD (STD_NO); 
 +$> CREATE INDEX IX_TB_HFDMS2_STD_CMPTN_SD_02 using BTREE ON TB_HFDMS2_STD_CMPTN_SD (STD_NO, DGNSS_ROUND); 
 +// 삭제 & 추가 
 +$> ALTER TABLE RSA.SIMS_MONITORING DROP INDEX IX_SIMS_MONITORING_01; 
 +$> CREATE UNIQUE INDEX IX_SIMS_MONITORING_01 USING BTREE ON RSA.SIMS_MONITORING (MONIT_ID); 
 +// 삭제 
 +$> ALTER TABLE RSA.SIMS_MONITORING DROP INDEX `PRIMARY`; 
 +</code> 
 +> 인덱스 이름 변경은 잘 안됨
  
 ===== 함수(function) 생성 ===== ===== 함수(function) 생성 =====
줄 220: 줄 246:
   INSERT INTO ${DEST_TABLE} ( SELECT * FROM ${SOURCE_TABLE} )   INSERT INTO ${DEST_TABLE} ( SELECT * FROM ${SOURCE_TABLE} )
  
 +===== Function & Procedures =====
 +  * [[wiki:mariadb:유용한 사용자 정의 함수|유용한 사용자 정의 함수들]]
  
 ===== Encoding ===== ===== Encoding =====
- 
   * [[wiki:mariadb:latin1에서 utf8mb4로 변환하기]]   * [[wiki:mariadb:latin1에서 utf8mb4로 변환하기]]
- 
  
 ===== Logging ===== ===== Logging =====
줄 236: 줄 262:
 ===== Trouble Shooting ===== ===== Trouble Shooting =====
   * [[wiki:database:mariadb:troubleshooting|TIMEZONE error]]   * [[wiki:database:mariadb:troubleshooting|TIMEZONE error]]
 +  * [[https://developer-joe.tistory.com/178|원격 IP로 MySQL(MariaDB)에 접속이 되지 않을 때의 해법]]
 +  * [[https://blog.dalso.org/it/4260||MYSQL(MariaDB)에서 외부접근이 되지않을때.(Feat. Can’t Connect To MySQL Server On ‘192.168.X.X'(10061)]]
  
 +\\
 ===== Ref ===== ===== Ref =====
   * [[https://m.blog.naver.com/kilsu1024/110162891049|MySQL 테이블 구조 복사 및 데이터 복사 ( Table Copy )]]   * [[https://m.blog.naver.com/kilsu1024/110162891049|MySQL 테이블 구조 복사 및 데이터 복사 ( Table Copy )]]
줄 248: 줄 276:
   * [[https://reference-m1.tistory.com/122|SQL Developer에서 MySQL 연결하기]]   * [[https://reference-m1.tistory.com/122|SQL Developer에서 MySQL 연결하기]]
   * [[https://extbrain.tistory.com/78|[MySQL] 날짜 차이 가져오기 (DATEDIFF, TIMESTAMPDIFF 함수)]]   * [[https://extbrain.tistory.com/78|[MySQL] 날짜 차이 가져오기 (DATEDIFF, TIMESTAMPDIFF 함수)]]
 +  * [[https://kimcblog.com/2018/07/14/mysql-mariadb-%EB%8D%B0%EC%9D%B4%ED%84%B0%EB%B2%A0%EC%9D%B4%EC%8A%A4-%EB%98%90%EB%8A%94-%ED%85%8C%EC%9D%B4%EB%B8%94%EC%9D%98-%EB%8C%80%EC%86%8C%EB%AC%B8%EC%9E%90-%EA%B5%AC%EB%B6%84/|MySQL ( MariaDB ) 데이터베이스 또는 테이블의 대소문자 구분]]
  
- +===== MySQL Note ===== 
- +  *[[wiki:database:mariadb:MySQL note]]
  
 {{tag>주레피 도봉산핵주먹 천호동밤안개 eleven mariadb mysql}} {{tag>주레피 도봉산핵주먹 천호동밤안개 eleven mariadb mysql}}
/volume1/web/dokuwiki/data/attic/wiki/database/mariadb.1607419810.txt.gz · 마지막으로 수정됨: 2022/03/10 19:52 (바깥 편집)