달력

11

« 2018/11 »

  •  
  •  
  •  
  •  
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  •  

Windows 2008 에서 Mysql 설치할때 Visual C++ Distribution 2013 에러나면


OS 는 분명 64비트이고, Mysql 도 서버 64비트를 설치할때 Visual C++ Distribution 2013 설치해야 한다는 에러 뜨면

vcdist 설치하면 되는데, 64비트 말고 32비트 x86 으로 설치해야 한다.


에러 스샷은 못찍었음;;



Posted by 멋지다마라송

우분투에서 mysql 데이터 디렉토리 바꾸기 change data dir 


새로운 파티션 /data 마운트. 여기를 새로운 mysql data dir 데이터 디렉토리로 사용할 예정.

권한 다 주고 my.cnf 에서도 맞춰두고 (링크걸었다면 수정 안해도 됨) 문제가 안보이는데 

권한없음으로 실행이 안됨. 

[ERROR] InnoDB: The innodb_system data file 'ibdata1' must be writable


이는 OS 에서 따로 권한을 줘야 하는데,

vi /etc/apparmor.d/local/usr.sbin.mysqld


아래 두줄 추가.

/data/ lrwk,

/data/** lrwk,


그리고 리로드.

service apparmor reload


그리고 mysql 스타트. 끝.



TAG datadir, mysql
Posted by 멋지다마라송
2017.05.19 16:47

MySQL Master - Replication 구성 Tech/MySQL2017.05.19 16:47

MySQL Master <-> Replication 구성


원본글 http://puham.tistory.com/71


mysql dual replication이란 일반적인 리플리케이션과 달리 서로가 마스터이자 슬레이브로

서로 양쪽의 db를 리플리케이션 함으로 어느쪽에서든 데이터가 생성되면 서로 복제하며

한쪽 DB가 죽어도 나머지 한쪽은 정상 작동되며 죽은 DB가 다시 살아날 경우 (서버가 죽은게 아닌)

작동이 멈춘동안 생긴 데이터가 시간순으로 복제된다.

# replication 설정

# db 1

#my.cnf 수정

vi /etc/my.cnf

[mysqld]

log-bin=mysql-bin
server-id   = 1   <-- 아이피 마지막 두자리로 적어두면 겹칠일이 거의 없음.
binlog_format = 'MIXED'


#mysql 재시작

/etc/init.d/mysqld restart



#리플리케이션에 이용할 db사용자 생성

mysql -u root -p

mysql> create user 'repli'@'서버2번 아이피 입력' identified by'비밀번호';



#mysql replication user 생성 및 master 정보 확인
mysql> grant replication slave on *.* to 'repli'@'서버2번 아이피 입력' identified by '비밀번호';
mysql> flush privileges; <-- 이건 안해도 상관없음.
mysql> show master status;

+------------------+----------+--------------+------------------+-------------------+
| File             | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+------------------+----------+--------------+------------------+-------------------+
| mysql-bin.000001 |     2516 |              |                  |                   |
+------------------+----------+--------------+------------------+-------------------+


# server 2

# my.cnf 수정

vi /etc/my.cnf

[mysqld]

log-bin=mysql-bin
server-id   = 2      <-- 아이피 마지막 두자리로 적어두면 겹칠일이 거의 없음.
binlog_format = 'MIXED'



# mysql 재시작

/etc/init.d/mysqld restart


#리플리케이션에 이용할 db사용자 생성

mysql -u root -p

mysql> create user 'repli2'@'서버1번 아이피 입력' identified by'비밀번호';


# mysql replication 설정, user 생성 및 master 정보 확인

mysql> stop slave;

mysql> change master to master_host='서버1번 아이피 입력', master_user='repli', master_port=3306, master_password='암호입력', master_log_file='mysql-bin.000001(위에나온 서버1 파일명)', master_log_pos=2516(위에나온 서버1 포지션번호);

mysql> start slave;
mysql> grant replication slave on *.* to 'repli2'@'서버1번 아이피 입력' identified by '암호입력';
mysql> flush privileges;
mysql> show master status;

+------------------+----------+--------------+------------------+-------------------+
| File             | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+------------------+----------+--------------+------------------+-------------------+
| mysql-bin.000001 |     2365 |              |                  |                   |
+------------------+----------+--------------+------------------+-------------------+


# server 1

# mysql replication 설정

mysql -u root -p

mysql> stop slave;

mysql> change master to master_host='서버2 아이피', master_user='repli2', master_port=3306, master_password='암호입력', master_log_file='mysql-bin.000001(위에나온 서버2 파일명)', master_log_pos=2365(위에나온 서버2 포지션번호);

mysql> start slave;



확인작업으로 한쪽에서 testdb 생성

다른쪽에 정상적으로 생겼는지 조회해본후

한쪽 mysql stop 후 나머지 한쪽에서 testdb2 생성

다시 mysql start후 testdb2 생기는지 확인




슬레이브 스타트할때

[ERROR] Slave I/O: Fatal error: The slave I/O thread stops because master and slave have equal MySQL server UUIDs; these UUIDs must be different for replication to work. Error_code: 1593

이런 에러가 뜨면

/home/mysql_data/auto.cnf 파일명 변경. (설치된 디렉토리는 다를 수 있음)

또는, MySQL 버전이 낮은 경우 소스 컴파일로 수정해야 함. (귀찮아서 안해봄)

Posted by 멋지다마라송

MySQL ODBC 5.3 Driver 설치 오류 : ODBC error 13 / 오류 코드 126


https://dev.mysql.com/downloads/connector/odbc/
여기에서 다운받은 MySQL ODBC 설치시 아래와 같은 에러가 난다면.

Error 1918.Error installing ODBC driver MySQL ODBC 5.3 ANSI Driver, ODBC error 13: MySQL ODBC 5.3 ANSI Driver ODBC 드라이버의 설치 루틴을 시스템 오류 코드 126 때문에 로드하지 못했습니다. 지정된 모듈을 찾을 수 없습니다...


MS VC++ 재배포 패키지 설치.


Microsoft Visual C++ 2010 Redistributable Package (x64)

https://www.microsoft.com/en-us/download/confirmation.aspx?id=14632


그래도 안되면


Visual C++ Redistributable for Visual Studio 2012 Update 4

https://www.microsoft.com/en-us/download/details.aspx?id=30679


설치후

C:\Windows\System32\msvcr100_clr0400.dll 파일명을 msvcr100.dll 으로 변경.


이후 Mysql ODBC 설치.


Posted by 멋지다마라송


티스토리 툴바