반응형

AIX에 대한 이미지 검색결과




요 근래 AIX 7.2에 MariaDB 및 MySQL을 설치하려 했으나 잠정적 불가능으로 결론..


첫번째로, AIX 7.2 전용 MySQL이 없다. RPM 지원은 당연히 없으며 MariaDB는 태생부터가 AIX 지원을 안한다.



두번째로, 그나마 AIX 5.1에서 설치가 가능하던 MySQl 3.2.58 버전 설치 시도 했으나 역시 실패


IBM 공식 홈페이지에 있는 AIX ToolBox for Linux Application을 통해 예전에 MySQL이 그래도 AIX를 지원한다는 사실을 발견하여 지푸라기 잡는 심정으로 그 RPM을 다운받아 설치 시도 RPM 설치까지는 모두 완료했으나 실행시 에러 발생.


관련 에러 원인 및 해결방안을 아무리 뒤져도 나오지 않았다. 심지어 구글 및 스택 오버플로우에서도!


그나마 찾고 찾아서 지나가는 말투로 적은듯한 댓글에 적혀 있는것이... 32bit / 64bit 지원여부에 따라서 안될것이라는 의견


찾아보니 MySQL 3.2.58 버전 출시는 2003년... 64비트 어플리케이션 자체가 생소하던 시절인데 AIX 7.2 64비트에 그래서 설치가 안되는 것인가... 어쨌든 실패




세번째로, 어떻게 MySQL 까지 실행은 성공했으나(그런데 Alpha 버전...) MySQL 연동에 필요한 라이브러리 실행 불가.


C++ 소스코드에서 MySQL DB와 연동시키려면 아마 절대다수가 MySQL Connector/C++을 사용할것이다.


그런데 Connector/C++이 1.1버전 이상에만 들어있는 함수를 사용했다면 역시 불가...


내가 찾아보니 기존 리눅스 소스에서는 1.19버전(즉... 최신....ㅡㅡ....) 함수를 마음껏 사용해서 짜놨기 때문에 소스코드 짜기는 참 쉬웠으나 결국 AIX에서는 불가. 


왜냐하면 AIX를 지원하던 마지막 버전이 1.1이기 때문에 그 이후의 버전의 새 함수를 사용한다면 구 버전으로 갈아치우거나 해야한다.


그럼 Connector/C++ 1.19버전의 라이브러리만 추출해서 적용하면 되는거 아닌가?


시도 안해봤을리가 있나... 이미 해봤으나 1.19 버전 소스코드를 받아 갖은수를 써서 Make를 시도해봐도 불가...


아예 소스코드 자체가 문법에 안맞다고 광활한 에러를 내뿜기 시작한다. 소스 코드 자체가 리눅스에 맞게 짜여진듯...


라이브러리 추출불가.


그럼 AIX를 지원하던 1.1버전 이전의 구버전 Connector/C++은? 라이브러리 추출 되지만 그 라이브러리 가지고는 적용 불가. 언급했다시피 최신버전의 Connector 함수를 마음껏 사용했다.





네번째로, 그렇다면 AIX 7.2에 적용할수 있는 DB를 쓰면 되지 않는가?


물론 있다. IBM의 DB2와 오라클... 이름만 들어봐도 그 포스가 절절히 흐르지만 라이센스료만 잘못하다가 억 소리나는 매우 비싼 분들이시다.


무료를 지향하는 나에게는 이미 요단강 건너서 ㅂ2 할 물건들



결론 적으로 AIX 최신버전에 MySQL을 포함한 MariaDB 등 GPL 라이센스를 따르는 오픈소스 DB들은 모두 적용이 잠정적으로 불가능하다.


물론 잠정적이라는 것은 내가 아직 실력이 부족해서 안되는것일수도 있고... 뭐 그렇다.


지금까지의 결론으로는 난 삽질만 한것이다.


능력자 분 누군가가 나의 글을 본다면 혹시 해결방법을 알고 있다면 꼭 댓글을 달아주셨으면 한다... ㅠㅠ 불쌍한 나를 좀 구제해주소서


반응형

"TNS-01189: The listener could not authenticate the user" error message

오라클 설치를 끝내고 이제 리스너 시작을 하기 위해 lsnrctl 명령어를 이용했건만, 위와 같은 오류가 하염없이 뜨면서 사람을 괴롭히는 경우가 있습니다.


이 오류를 해결하기 위해 구글링을 했는데 의외로 해결책이 마땅한게 없어서 애를 좀 먹었습니다. 


이 오류를 해결하기 위해서는 반드시 살펴봐야 하는 사항이 2가지 입니다.


1. 현재 리눅스 접속 아이디가 오라클을 사용할수 있는 아이디로 접속을 하였는가?


2. lsnrctl 버전이 오라클과 다르지는 않은가?


 

첫번째의 경우가 해결책이 되는 경우는 사실상 거의 없습니다. 하지만 혹시나 현재 root로 접속하고 있는건 아닌지 한번 살펴보시기 바랍니다.


아마 대부분 오라클을 리눅스에 설치하기 위해 구글을 통해 정보를 찾아 그 설치과정을 그대로 따라했을 것입니다.


이렇게 되면 대부분 "oracle" 이라는 아이디를 만들었을것인데요. 아무리 root라 할지라도 리스너를 실행시킬수가 없습니다.


오라클 관련 권한은 전부 아이디가 oracle인 녀석에게 있기 때문입니다.



 

▲ 아이디가 oracle인지 root인지 반드시 확인 해볼것 



그렇다면 두번째를 살펴봐야 하는데요. 제가 두번째 케이스를 고려하고 다시 수정해서 해결을 했습니다.



리스너 버전을 확인하기 위해서는 단순하게 lsnrctl 명령어를 쳐보시면 확인할수 있습니다.






그럼 위와 같이 버전을 확인하실수가 있습니다. 지금은 11.2로 버전이 잘 업데이트가 되었지만 제가 TNS-01189 오류가 났었을때는 버전이 10.2였습니다.


오라클 버전은 11g 인데 리스너는 10.2였으니 버전이 서로 맞지가 않아 lsnrctl 명령어가 먹질 않았던 것입니다.


버전을 업데이트를 하면 거의 90%는 해결된다고 보실수 있는 문제입니다. 90%라고 하는 이유는 나머지 10%는 다른 이유가 복합적으로 작용해서 생긴 문제일수도 있기 때문입니다.


버전 업데이트 하는 방법은 listener.ora 파일에 들어가셔서 리스너 설정을 해주면 바로 해결될수 있는 문제인데요.


구글에 버전에 맞는 리스너 설정법을 검색하시면 쉽게 업데이트 가능합니다.


예를 들어 저 같은 경우 오라클 11g의 리스너 설정을 하고 싶기 때문에 "오라클 11g 리스너 설정" 이라고 검색하면 수많은 블로거 분들이 아주 잘 포스팅한 글들이 매우 많기 때문에 그것들을 그대로 복붙한다음 IP와 포트만 바꿔 주시면 됩니다.


간단한 예로 제가 설정한 리스너 내용을 밑에 올립니다.



이것은 오라클 11g 리스너 설정 내용이므로 다른 버전을 쓰신다면 다른 버전을 검색하시면 되겠습니다.



이것으로 포스팅 마치겠습니다. 

+ Recent posts