* 개요 MySQL 은 기본저긍로 local에서만 접속 하도록 설정되어 있음.- 외부에서 접속하려면 해당 IP 원격접속 허용해줘야 함.- 만약 안되어 있다면 다음 오류 발생ERROR 1045 (28000): Access denied for user - 다음 사항을 확인해야... 1. 유저생성 (CREATE USER ...)2. 접근 권한 지정 (GRANT ...) 3. 변경된 권한 적용 (FLUSH ...)4. MySQL 설정에 외부 접근 허용 (bind-address....)5. 방화벽 해제 #MySQL 외부접근 * 환경MySQL 8Win7 * 문제 해결- (외부에서 root로 접속한다고 가정) root의 허용 IP 를 바꿔줌.- % 는 전체- 192.123.111.% 형태도 가능 CREATE USER..
* 여기서 다운로드 후 설치 https://dev.mysql.com/downloads/mysql/ - 참고 : Installer 가 32bit 라도 MySQL 64 bit 설치 가능 - 참고 2 : 다음 화면에서Strong passwod Encryption for authentication 선택하면 Workbench 에서 오류 발생하는 현상 있었음. (두번째 Legacy ... 로 고치고 해결됨) * .NET Framework 4.5.2 요구하는 경우다운로드https://www.microsoft.com/en-us/download/details.aspx?id=42642 * 오류 : api-ms-win-crt-runtime-l1-1-10.dll 를 찾을 수 없습니다 - 해결방법 : 다음 주소에서 vc_red..
sudo apt install mariadb-server ... 다음 패키지의 의존성이 맞지 않습니다: mariadb-server : 의존: mariadb-server-10.1 (= 10.1.32+maria-1~xenial) 하지만 %s 패키지를 설치하지 않을 것입니다E: 문제를 바로잡을 수 없습니다. 망가진 고정 패키지가 있습니다. * 버전명을 명시해 보래서...http://egloos.zum.com/ZHANITEST/v/1351273 sudo apt-get install mariadb-server-10.1=10.1.32+maria-1~xenial ...다음 패키지의 의존성이 맞지 않습니다: mariadb-server-10.1 : 의존: galera-3 (>= 25.3) 하지만 %s 패키지를 설치하지 ..
* 개요1대 컴퓨터에 우분투, 윈도우즈 멀티부팅 환경 하에서 개발 중.윈도우즈에 개발용 DB (MariaDB) 있음.우분투에서도 이걸 쓰고 싶은데 윈도우즈+우분투 동시 부팅할 수 없고, OS 다른데 이걸 공유할 순 없을까. * 착안점- 우분투 MariaDB 는 당연히 윈도우용 MariaDB 데이터 파일 못 읽을거라고 생각하고(설마 되나?)- 우분투에서 VMWare 띄우고, 가상머신에 윈도우즈+MariaDB 설치하고, - 가상머신 MariaDB 에서 대상 데이터베이스(호스트PC Windows 환경 MariaDB)를 연결- 호스트 PC 우분투에서는 가상머신 Windows MariaDB에 클라이언트로 접속하여 DB 사용 - 주의 : 윈도우즈에서 사용하는 디스크를 우분투-가상머신-윈도우즈에서 직접 연결하는 방법..
* 개요나는 3천만개 에 대해서 ID 구간별로 1000개씩 쪼개서 3000개 쿼리를 만들었지. * 14GB SQL 사례https://stackoverflow.com/questions/13717277/how-can-i-import-a-large-14-gb-mysql-dump-file-into-a-new-mysql-database?utm_medium=organic&utm_source=google_rich_qa&utm_campaign=google_rich_qa질문 : 14GB 의 SQL import 어떻게 합니까? - 답변1] max_allowed_packet 기본값 1Mb => 1Gb 로 올리고net_buffer_length (네트워크 버퍼?) 1M 으로 올리고foreign_key_checks = 0 ( 외..
* 대상뉴스 제목, 언론사 명 및 관리용 컬럼으로 구성된 테이블약 3천만 RowSQL 파일 약 30GB * 환경 - 2012 년경 구입한 데스크탑CPU AMD-A8 / 4 core / 2.9GHz16gb ramwin 7MariaDB 10.2 * 사건 개요고물 컴퓨터 / Windows 7 / MySQL 5.5 환경에서 뉴스 수집과 정리를 하고 있었음.돌아가는데는 큰 지장이 없었지만 더 나은 버전으로 마이그레이션 하기로 함.인덱스가 워낙 많고, Full text Index 도 있는 상태. MySQL 과 MariaDB 고민 끝에 MariaDB 10.2 로 결정MySQL 5.5 에서 MariaDB 10.2 로는 옮겨갈 수 없기에 SQL 로 덤프해서 옮기기로 함. SQL 은 진행 상황 확인, 중단시 재개 고려하여..
* 개요- mysql dump 시에 ID 별로 분할해서 한 경우- 모든 SQL 마다 DROP TABLE/CREATE TABLE 구문이 있는 경우 이걸 지워야 함. * 애초에 dump 할때 --no-create-info 옵션 했으면 됐을것. * 리눅스에서 DDL 빼고 실행하는 방법 https://dba.stackexchange.com/questions/106843/mysql-how-to-restore-mysql-dump-sql-ignoring-drop-table-statement?utm_medium=organic&utm_source=google_rich_qa&utm_campaign=google_rich_qa * 자바 코드- 이 코드 실행시 sqlNoDdl 이란 확장자 가진 파일들이 생성됨- CREATE, ..
// * 폴더 내 모든 sql 가져와서.. (정렬 안됨) String sPath = "I:\\180405_Winuser백업\\180404_IrsPDB_sqlDump";String sBat = "restoreAll.bat";String sDbName = "130514cidogir"; // 1. SQL 파일 목록 가져오기File fDir = new File(sPath);File[] afSql= fDir.listFiles(new FilenameFilter() {// sql 파일만 가져옴@Overridepublic boolean accept(File dir, String name) {return name.matches(".*\\.sql");}});// 2. 모두 실행하는 BAT 생성File fBat = new ..
* 개요 - MySQL + MariaDB 같이 설치 - 사실상 그냥 설치 하면 됨- Service name, TCP Port 달리 하여... - MySQL 홈페이지 에서는 여러개 인스턴스 돌리기 위해 확인할 변수 안내https://dev.mysql.com/doc/refman/5.7/en/multiple-servers.html (딱히 신경쓸 필요는 없었음..) * 환경Windows 10MySQL 8.0MariaDB 10.2 1. MySQL 설치 http://minstar0410.tistory.com/5 - Service 명 확인 : MySQL80(기본값)- TCP Port : 3306(기본값) 별로 안 중요한 사항들...- 기타 : Development default 말고 Custom 으로 설치해야 폴더 ..
* 순서는 다음 포스트에서 진행한 순서대로http://dogcowking.tistory.com/74 진행했으나, 서비스 재시작 단계에서 더 이상 진행되지 않음.(서비스 시작이 되어야 mysql_upgrade 도 실행하고 할 수 있는데 . . .) - 물론 data 폴더를 MySQL 5.6용 (기존에 쓰던..) 으로 바꿨을 때 그런거고MariaDB 용으로 생성된 DB 쓸땐 잘 됨.. 어쨌든 실패 * MariaDB 10.2 바로 설치하는게 낫겠어.
* mysql 백업 & 되살리기http://dimdim.tistory.com/entry/MySQL-%EB%B0%B1%EC%97%85-%EB%B0%8F-%EB%B3%B5%EA%B5%AC http://bizadmin.tistory.com/entry/MySQL-%EB%B0%B1%EC%97%85-%EB%B0%8F-%EB%B3%B5%EA%B5%AC%ED%95%98%EA%B8%B0 - 덤프mysqldump -u[userId] -p[password] --databases [DB명] > dump.sql - 복원mysql -u [userId] -p [password] [DB명] < dump.sql * 덤프 시 인코딩 http://www.webmadang.net/database/database.do?action=read&..
* 개요- 하드 디스크 용량이 꽉 차서 ERROR 1114 (HY000) at line 5602: The table 'Sample' is full오류 발생시키며 더 이상 insert 불가- 문제는 안 쓰는 테이블을 delete 또는 drop 해도 하드디스크가 남지 않는다는 것=> ibdataX 파일의 용량이 줄어들지 않음.- 관련 검색어 InnoDB ibdata1 never shrinks after data is removed * 테이블을 지운다고 해서 ibdata 파일의 용량이 줄어 들지는 않는다고 함http://www.mysqlkorea.com/gnuboard4/bbs/board.php?bo_table=community_03&wr_id=3458 https://stackoverflow.com/quest..
- 180123 내용 보완 * MySQL 에서 텍스트 검색시 like '%XXX'%' 나 REGEXP 이용 가능하지만데이터가 늘어나면서 성능이 떨어짐- 미리 Fulltext Index 를 만들어 놓아 빠른 검색 가능- MyISAM엔진 에서는 기본 지원- InnoDB 에서는 5.6 이상부터 지원 https://dev.mysql.com/doc/refman/5.5/en/fulltext-restrictions.html * like -> match against 로 쿼리 변경시 성능 개선- 뉴스 제목 200만건 중 50건 정도되는 검색시21.606sec => 1.154 sec- 2000만건 대상, 비약적 차이 (몇 분이 걸려 검색 불가 => 5초 내에 가능) - 단, 검색 달라짐 ( fulltext index 는..
* 개요- MySql 5.1 에서 5.6 으로 업그레이드- 5.1 에서 만들어진 데이터 파일을 그대로 사용할 수 있는지가 관건=> 절차만 잘 지키면 가능- 기존에 5.1 에서 MariaDB 적용하다가 실패한 경험 있음. * 5.1 -> 5.5 -> 5.6 으로 업그레이드 진행할것- 몇군데 찾아보니까 다들 그런식으로 하더라...- 데이터 250기가 날릴순 없으니.. * 환경Windows 7MySql 5.1 + 데이터 250GB * 1. 기존 데이터 백업해둘것.변경이 없었다면 C:\ProgramData\MySQL\MySql Server 5.1\ 에 있음. * 2. 인스톨러 다운로드 / 실행https://dev.mysql.com/downloads/mysql/ ZIP 로 받는 등의 방법 있지만, Installe..
* mysql regexp 를 like 처럼 전체구간 일치로 검색 하기=> regexp 는 like '%XXX%' 처럼 동작.. like 'XXX' 로 쓰는 법=> java 의 match() 처럼 사용하기 (find() 가 아니라 ..)예)WHERE title REGEXP 'MB' 로 하면 MBMBCAMBCDFD 가 모두 검색됨 ( = LIKE '%MB%' 같은 효과 ) - 바라는건 MB 만 검색하는것 * 방법 1https://stackoverflow.com/questions/656951/search-for-whole-word-match-in-mysql REGEXP '[[::]]' 앞 뒤 기호는 word-boundary 기호.. 이러면 AMBC 는 인식되지 않지만,A MB C는 인식됨 (공백으로 하나의 ..