본문 바로가기
반응형

MySQL84

MySQL의 replication 방법 그렇다면 MySQL 복제 란 무엇입니까?복제는 소스 환경의 트랜잭션을 기반으로 한 위치에만 저장되는 대신 정보가 다른 환경에 복사되고 의도적으로 채워지는 것을 보장합니다. 이를 위해서는 인프라에서 보조 서버를 사용하여 읽기 또는 다른 관리 솔루션을 사용하는 것이 좋습니다. 아래 .. 2019. 10. 10.
MySQL 데이타베이스와 계정 생성하기 MySQL 데이타베이스와 계정 생성하기.utf8 mysql 5.7 이상은 Create User 구문 사용MySQL 5.7 이상CREATE DATABASE homestead CHARACTER SET utf8 COLLATE utf8_bin; CREATE USER 'homestead'@'localhost' IDENTIFIED BY 'secret' PASSWORD EXPIRE NEVER;GRANT ALL PRIVILEGES ON homestead.* TO 'homestead'@'localhost'; flush privileges;MySQL 5.7 미만CREATE DATABASE homestead.. 2019. 3. 13.
Mysql 5.7 log_warnings log_warnings PropertyValueCommand-Line Format--log-warnings[=#]Deprecated5.7.2System Variablelog_warningsScopeGlobalDynamicYesTypeIntegerDefault Value (64-bit platforms, >= 5.7.2)2Default Value (64-bit platforms, <= 5.7.1)1Default Value (32-bit platforms, >= 5.7.2)2Default Value (32-bit platforms, <= 5.7.1)1Minimum Value0Maximum Value (64-bit platforms)184467440737.. 2019. 2. 7.
MySQL Galera Replication MySQL Galera Replication 조대협 (http://bcho.tistory.com) RDBMS 오픈소스 중에서 단연 가장 많이 사용되는 것은 MySQL인데, 근래에 웹 스케일이 커지면서, 단일 인스턴스로만 서비스가 불가능한 용량까지 가게 되서, 이 MySQL에 대한 클러스터링 스케일링에 대한 이슈가 많아졌다. 이에 Tungsten, MySQL Replicati.. 2018. 12. 12.
MySQL 원격 증분 백업 – Percona XtraBackup MySQL 원격 증분 백업 – Percona XtraBackup # Percona XtraBackup 소개 이미 예전에 XtraBackup을 간단하게 소개한 글을 썼었는데 그 글의 내용만으로는 XtraBackup을 실무에 쓰기에 턱없이 부족하다. 그래서 이번에는 XtraBackup을 제대로 쓸 수 있는 문서를 만들었다. 일반적으로 MySQL 백업으로 mysqldump를 사용하는데 매번 전체를 백업하는 방식이므로 데이터가 커질수록 백업에 걸리는 시간이 길어지고 부담이 커진다. 뿐만 아니라 백업된 데이터를 복구하는데도 무척 긴 시간을 필요로 한다. 하지만 XtraBackup을 사용하면 마지막 백업으로부터 변경된 사항만 이어서 백업하는 증분 백업이 가능하다. XtraBackup은 MySQL의 데이터 디렉토리 .. 2018. 12. 12.
Mysql 5.7 GIS GEOMETRY 의 거리계산방식 Mysql 5.7 GIS GEOMETRY 의 거리계산방식 DROP TABLE test_geom; CREATE TABLE test_geom ( `mem_geo` GEOMETRY NOT NULL COMMENT 'Geo좌표', SPATIAL KEY `i_geomidx` (`mem_geo`) ) ENGINE=MYISAM DEFAULT CHARSET=utf8 COMMENT='data'; INSERT INTO test_geom (mem_no,mem_geo) VALUES (1,GEOMFROMTEXT(CONCAT('POINT(126.847676 35.145623)'))); INSERT INTO test_geom (mem_no,mem_geo) VALUES.. 2018. 12. 4.
System variables –log_warnings 에러 로그에 경고 메시지를 생성하는 옵션으로 기본값은 5.7.2이전에는 1, 이후에는 2로 활성되어있다. 5.7.2부터 log_warnings에 의해 관리되는 정보는 log_error_verbosity에 의해 관리되며 log_error_verbosity는 이전 log_warnings 보다 우선 사용된다. log_warnings에 값을 할당하면 log_error_verbosity에도 할당이 되며 반대의 경우에도 마찬가지로 적용된다. log_warnings=0은 log_error_verbosity=1(오류만)으로 수행 log_warnings=1이상은 log_error_verbosity=2(경고)로 수행 log_warnings=2는 log_error_verbosity=3(메모)로 수행 5.7.2부터 log_e.. 2018. 10. 15.
MySQL Block Nested Loop (BNL)에 대한 이해 이번 시간에 살펴볼 내용은 Block Nested-Loop (이하 BNL)입니다. MySQL이 BNL을 제공하는 이유는 Nested Loop 조인만 지원하는 한계점을 보완하기 위해서입니다. 예를 들어, 조인 칼럼 인덱스가 없다고 가정해보죠. 이 경우, ORACLE과 PostgreSQL과 같은 DBMS는 해시 조인 또는 머지 조인을 사용합니다. 그런.. 2018. 6. 20.
Mysql 5.7 유저 생성시 달라진점(CREATE USER) Mysql 5.7 유저 생성시 달라진점(CREATE USER) # 5.7 이전 버젼 GRANT SELECT, INSERT, UPDATE, DELETE,CREATE,EXECUTE ON DB_NAME.* TO 'USER'@'HOST' IDENTIFIED BY 'PASSWORD'; FLUSH PRIVILEGES; # 5.7에서 실행시 경고 "MySQL is started in --skip-name-resolve mode; you must restart it without this switch for this grant to work" "Using GRANT statement to modify existin.. 2018. 5. 16.
Mysql sql_mode 항목정리 Full List of SQL Modes • ALLOW_INVALID_DATES 날짜를 완전히 확인하지 마십시오. 달이 1에서 12 사이의 범위에 있고 일의 범위가 1에서 31 사이인지 확인하십시오. 이는 세 개의 다른 필드에서 년, 월, 일을 얻는 웹 응용 프로그램에 유용 할 수 있으며 사용자 날짜 유효성 검사없이 삽입되었습니다. .. 2018. 5. 8.
MySQL server has gone away 에러가 발생하는 원인 # MySQL server has gone away 에러가 발생하는 원인 - 커넥션이 끊어진 이후에 쿼리를 전송했을 때 - max_allowed_packet 을 초과하는 크기의 쿼리를 전송했을 때 - wait_timeout 을 초과하여 커넥션이 끊어진 경우 - 잘못된 쿼리를 지속적으로 전송하여 서버가 차단한 경우 대부분 MySQL 에 설정된 데이터 전송량이나 전송시간을 초과 하는 경우 발생합니다. 이런경우 MySQL 설정파일인 my.cnf 에서 아래 값을 변경해주시면됩니다. MySQL 기본값은 wait_timeout 8시간, max_allowed_packet 는 16M 입니다. wait_timeout = 28800 max_allowed_packet = 16777216 2017. 12. 27.
MySQL MULTI INSERT 에서의 주의사항 INSERT ~ SELECT 를 통해 처리 하는 부분이 있을듯 하다. 직접 실행하거나 EVENT SCHEDULE 을 통한다거나 할경우에 해당 설정값에 영향을 받는것 같다. 옵션 항목중 max_allowed_packet 항목!!! 해당 항목을 서비스에 맞게 조절을 해서 사용하길 바람다. 기본값은 1M 이며 설정이 가능합니다. (아래는 256M .. 2017. 11. 24.
서버 SQL 모드 [sql mode] SQL 모드 설정 SET GLOBAL sql_mode = ' modes '; SET SESSION sql_mode = ' modes '; SELECT @@GLOBAL.sql_mode; SELECT @@SESSION.sql_mode; 가장 중요한 SQL 모드 가장 중요한 sql_mode 값은 아마도 다음과 같습니다. • ANSI 이 모드는 구문 및 동작을 변경하여 표준 SQL과보다 밀접하게 일치합니다. 이 절의 끝에 나열된 특수 조합 모드 중 하나입니다. • STRICT_TRANS_TABLES 값이 트랜잭션 테이블에 주어진대로 삽입 될 수 없으면 문을 중단하십시오. 비 트랜잭션 테이블의 경우, 값이 단일 행 문 또는 다중 행 문의 첫 번째 행에서 발생하면 명령문을 중단합니다. 자세한 내용은이 섹션 뒷부분에.. 2017. 9. 28.
Mysql 1236 Error 해결법 [ERROR] Error reading packet from server: Could not open log file (server_errno=1236) [ERROR] Slave I/O: Got fatal error 1236 from master when reading data from binary log: 'Could not open log file', Error_code: 1236 # Mysql Replication 실행시 위로 같은 에러가 발생 했다면 Master에서 Position정보를 읽어오지 못해서 발생하는 에러이다 # Master의 포지션값을 확인하여 적용해준다. STOP SLAVE; CHANGE MASTER TO MASTER_HOST='HOST', MASTER_USER='USER', MAS.. 2017. 7. 21.
innodb 설정관련 A. innodb_data_home_dir : 테이블스페이스 파일의 생성 위치 설정 B. innodb_data_file_path : 테이블스페이스 파일 명 및 크기, 옵션 설정 innordata1:256M:autoextend:max:2000M innordata1라는 파일명으로 생성되고 256MB의 고정크기로 최초 생성되며, 용량이 256MB가 넘을 경우 “autoextend”라는 옵션으로 자동으로 파일 크기가 확장되며, 최대 확장되는 크기는 MAX 옵션의 설정 값만큼 확장 C. innodb_autoextend_increment : autoextend 옵션으로 자동 확장되는 크기 지정, 디폴트는 8M D. innodb_file_per_table : 공용 테이블스페이스 사용 대신에 테이블 별 테이블스페이스 .. 2017. 6. 16.
Mysql 5.6 Warning: Using a password on the command line interface can be insecure. 메세지 안보이게 하기 MySQL 5.6 버전부터 mysqldump 명령시 패스워드를 같이 명령줄에 입력하면 패스워드 노출 위험성에 대한 경고 문구가 뜨게 됩니다. # mysqldump -u root -p"1234" neulwon > neulwon.sqlWarning: Using a password on the command line interface can be insecure. 이 메세지 출력을 원하지 않을 경우 아래와 같이 설정하시면 됩니.. 2016. 1. 12.
mysql 5.5 -> 5.6 업그레드 관련 기본 언어셋이 utf8 이므로 혹시나 euckr를 사용해야 한다면 다음 설정을 해야합니다. 가급적이면 utf8을 사용하기를 권장합니다 ~ # my.cnf [client] default-character-set = euckr [mysqld] init_connect="SET collation_connection = euckr_korean_ci" init_connect="SET NAMES euckr" character-set-server = euckr collation-server = euckr_korean_ci .. 2015. 3. 11.
mysql cursor no data - zero rows fetched selected or processed 해결하기 Mysql cursor 를 사용하여 프로시져 생성하였는데 ... 이런 에러로그가 나온다면 1329: No data - zero rows fetched, selected, or processed 다음과 같이 추가 하여 해결한다. DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = TRUE; OPEN cur1; BEGIN DECLARE CONTINUE HANDLER FOR NOT FOUND <= 이부분을 추가 한다 . 그런데.. 더 좋은건 5.. 2014. 12. 30.
[Mysql] 2. 스케일 아웃 측면에서 살펴본 MySQL의 특성 출처 : http://www.dbguide.net/knowledge.db?cmd=view&boardUid=166753&boardConfigUid=20&boardStep=&categoryUid=209 스케일 아웃 측면에서 살펴본 MySQL의 특성 최근 인터넷 서비스들은 글로벌을 지향하고 소셜 네트워크 기능들을 추가하다 보니 데이터의 양과 트래픽의 양이 급속히 증가하고 있다. 또한 가용성 확보 .. 2014. 9. 25.
msyql mysqlbinlog mysqlbinlog 바이너리 파일명> 생성할파일명 mysqlbinlog --database=디비명--start-datetime=검색시작날짜 바이너리 파일명 > 생성할파일명 2012. 9. 28.
반응형