+ admin 2020.07.24 Mysql 8.0.21 install ( Centos 7.x yum) OS : Centos 7.x MYSQL VERSION : 8.0.21 INSTALL : yum mysql 8.0.21 설치를 진행하는데 간단하게 yum 으로 진행해보자 repo rpm file down 및 설치 [crayon-670ec2292ce89138186503/] yum install [crayon-670ec2292ce92628906963/] /etc/my.cnf 파일 설정 (기본 innodb) —> 만약 기본 engine을 myisam으로 설정하고 싶다면 젤 하단 myisam my.cnf파일 내용 참고 [crayon-670ec2292ce96362092406/] 4. 서비스 시작 및 서비스 확인 [crayon-670ec2292ce99109963520/] 5. 기본 설치를 하게 되면 패스워드 정보가 l... Read More..
+ admin 2020.01.17 mysql dump 옵션 정리 mysqldump 옵션 정리 기본 mysql 5.x mariadb 는 mysqldump 시 기본 케릭터셋이 utf8이다 이 부분은 확인하고 작업하는것이 좋다 1. 전체 데이터베이스 백업 [crayon-670ec2292e7fa264375902/] 2. 특정 데이터베이스만 백업 [crayon-670ec2292e803559269136/] 3. 특정 데이터베이스에서 특정 테이블만 백업 [crayon-670ec2292e806825304108/] 4. 2개의 데이터베이스 백업 옵션 : –databases [crayon-670ec2292e809314186370/] 5. 데이터베이스 백업시에 스키마(Schema)만 덤프시 / 이렇게 스키마만 dump를 할 수 있다. / -d 옵션 사용 [crayon-670ec2292e8... Read More..
+ admin 2020.01.17 utf8 -> euckr database 변경작업 ( mysqldump ) utf8로 구성된 데이터베이스를 mysqldump 하여 euckr로 넘기는 작업 방법은 2가지 존재한다 첫번째 mysqldump 기본 characterset 을 euckr로 지정해서 dump 후 데이터베이스 import 두번째 mysqldump characterset을 utf8 지정해서 database dump 후 iconv 변경 후 import 작업 가급적 첫번째 작업으로 문제없이 옮겨진다 / 안되면 두번째 방법으로 진행 1. 첫번째 방법으로 진행 원본 서버에서 Mysqldump를 이용하여 자료 dump [crayon-670ec2293075d643635866/] 대상 서버에서 데이터베이스 import를 진행하면 되는데 sed로 먼저 character-set 변경 ### 대상서버에서 작업 [crayon-6... Read More..
+ admin 2020.01.17 ecukr -> utf8 database 변경작업 ( mysqldump ) 원본서버 데이터베이스 : Mysql 5.0 / 기본 character : euckr 대상서버 데이터베이스 : MariaDB 10.4 / 기본 character : UTF8 1. 현재 서버의 Mysql 버전 및 character 체크 [crayon-670ec229318d0548130300/] 현재 서버의 O/S 언어 [crayon-670ec229318d8360554706/] 덤프 받을 데이터베이스 character 및 table character 체크 [crayon-670ec229318dc864111255/] 2. 이제 데이터베이스를 dump 를 진행한다 ( 기본 케릭터셋을 지정해서 덤프 받을것) [crayon-670ec229318df898236440/] 덤프 뜬 파일중에 테이블 생성 내용을 보면 ... Read More..
+ admin 2020.01.17 euc_kr -> euckr , utf8 변경작업 ( mysql 4.0.x —> mysql 5.x / mariadb 10.4 ) 현재 사용하고 있는 데이터베이스 버전이 4.0.x 버전이다 서버의 케릭터셋은 euc_kr 버전이다 근데 이것을 mysql 버전업을 진행하려고 한다 그럼 마이그레이션 작업을 진행해보자 1. euc_kr -> euckr 버전으로 ( Mysql 5.0.x 버전 ) 2. euc_kr -> euckr 버전으로 ( MariaDB 5.5.x 버전 ) 3. ecu_kr -> utf8 버전으로 ( Mariadb 10.4.x 버전) 원본서버의 서버O/S 언어 확인 [crayon-670ec2293250b752806133/] mysql 버전 확인 mysql 4.0.27 / 케릭터셋 : euc_kr [crayon-670ec22932514694957671/] 이전할 데이터베이스 데이터 확인 : 데이터베이스명 : xinet_... Read More..
admin 2020.01.14 mysqldump: Got error: 1932: “Table ‘mysql.gtid_slave_pos’ doesn’t exist in engine” when using LOCK TABLES mysqldump all database 시 발생하는 에러 mysqldump: Got error: 1932: “Table ‘mysql.gtid_slave_pos’ doesn’t exist in engine” when using LOCK TABLES 원인은 mysql.gtid_slave_pos 테이블을 읽어 들이지 못하는 과정에서 발생하는 에러인데 해당 테이블 mysql.gtid_slave_pos Mariadb 10.0.3 버전부터 소개된 기능으로 Mariadb의 글러벌 변수인 gtid_slave_pos를 저장하기 위한 테이블이다 해당 테이블을 사용해 gtid_slave_pos를 저장하고 재부팅 시에도 gtid 값을 유지하고 있기 때문에 slave 서버에서 에러(크래시)가 발생 시에도 sync를 맞출 수 있... Read More..
+ admin 2019.12.26 innodb를 myisam로 변경 ( mysql mariadb ) DB : Mariadb , mysql 현재 테스트 환경 mysql 5.5 전체 데이터베이스 저장 디렉토리 /free/mysql_data 1. 현재 데이터베이스의 환경을 확인해 보자 / 기본 엔진이 MyISAM으로 되어 있으며 innodb_file_per_table 옵션은 off 되어 있는 상태입니다 (즉 ibdata1 파일에 데이터가 기록되는 구조) [crayon-670ec22933b52019075884/] 2. 현재 데이터베이스의 파일 확인 ( xinet 데이터베이스가 존재하며 해당 데이터는 ibdata1에 저장되어 있는 상태) [crayon-670ec22933b5a319716502/] 3. 변경할 데이터베이스 파일 확인 ( xinet 데이터베이스) [crayon-670ec22933b5e1465367... Read More..
+ admin 2019.12.20 myisam을 Inodb로 변경 ( mysql mariadb ) DB : Mariadb 10.4.x 현재 운용중인 xinet.kr 워드프레스의 데이터베이스는 Mariadb 10.4 버전이고 기본 엔진은 MyISAM 이다 이것을 InnoDB로 변경해 보자 현재 데이터베이스 엔진 상태 [crayon-670ec22934432237580323/] 데이터베이스에서 특정 테이블 하나만 엔진이 어떤것으로 되어 있는 확인 해 보자 /기본이 ENGINE=MyISAM 되어 있다 [crayon-670ec2293443b418255331/] 파일 형태 frm MYI MYD 파일이 존재한다 왜 기본 엔진이 myisam 이니깐 frm : 테이블 구조가 저장되어 있는 파일 MYD : 실제 데이터가 저장되어 있는 파일 MYI : Index 정보가 들어있는 파일 [crayon-670ec2293443... Read More..
+ admin 2019.12.20 innodb frm ibd 파일 가지고 복구하기 ( dbsake frm 추출) 뭐 사람이 실수를 할수도 있다고 하지만 운영중인 데이터베이스가 innodb로 운영되고 있다 다행히 innodb_file_per_table 옵션이 활성화 되어 있어서 각 테이블당 ibd 파일이 있다 근데 내가 모르고 ibdata1 파일을 삭제 해 버렸다. 젠장 ㅠㅠ / 즉 ibdata1으로 모든 파일이 저장되고 있었는데 이것을 모르고 내가 삭제한 것이다. 왜? 각 데이터베이스 폴더아래 ibd 파일이 존재하니 당연 없어도 된다고 생각했지.. 좀 복잡하게 꼬였는데 원래 처음에 innodb_file_per_table 이 기본 0 으로 운영되고 있었다는 것 근데 이것을 옵션을 innodb_file_per_table=1 로 변경해서 사용했던 것이다. 그래서 테이블당 ibd 파일이 생성되었고 innodb_file_per... Read More..
admin 2019.09.20 MariaDB sql_mode STRICT_TRANS_TABLES ( NULL 값이 입력되는 경우 에러처리) 기존 MariaDB에서 데이터를 입력시에 데이터값에 아무런 정보가 들어가지 않아도 문제가 발생되지 않았다 근데 기존 버전 10.1.38 버전에서는 문제없이 잘 입력되던데 10.4.7 버전으로 올리면서 저장이 되지 않는다 확인을 해보니 10.2.4 버전 이후로는 sql_mode에서 STRICT_TRANS_TABLES 값이 기본값으로 되어 있다 이모드로 되어 있는경우 데이터입력시에 빈공간으로 데이터를 입력시에 에러가 발생되게 해주는 모드이다 기존에는 데이터가 없을경우 기본 NULL값으로 데이터 입력이 되었는데 그럼 한번 확인해보자. MariaDB 10.1.38 기본 모드에서 테이블 생성 후 작업 / 정상적으로 데이터값에 아무런 ” 입력이 없어도 정상적으로 입력이 된다 [crayon-670ec2293828b897... Read More..