복붙노트

[MONGODB] MongoDB의의 mongorestore 실패 : 유효하지 로케일 ::면 :: _ S_create_c_locale 이름

MONGODB

MongoDB의의 mongorestore 실패 : 유효하지 로케일 ::면 :: _ S_create_c_locale 이름

나는 (12.04 서버 우분투) 컴퓨터 A에 mongodump와 덤프를 만들었습니다. 나는 (12.04 서버 우분투) 컴퓨터 B로 이동 입력 :

그것은 실패가보고 :

나는 성공적하기 전에이 작업을 수행 한이 이상한 행동은 발생하지 않았다. 이 문제를 해결하려면 어떻게해야하나요?

해결법

  1. ==============================

    1.내 배포판에 "로케일 세대는"설치되지 않은 그것은 모두 내가 LC_ALL 환경 변수를 설정해야했다 밝혀졌다. 그래서 다음과 같은 명령은 고정 :

    내 배포판에 "로케일 세대는"설치되지 않은 그것은 모두 내가 LC_ALL 환경 변수를 설정해야했다 밝혀졌다. 그래서 다음과 같은 명령은 고정 :

    export LC_ALL="en_US.UTF-8"
    

    잘하면 다른 사람을 도움이 될 것입니다 ...

  2. ==============================

    2.사실 그것은 엄격히 MongoDB를 관련이 없습니다. 어떻게 든 컴퓨터 B의 언어가 올바르게 정의되지 않았습니다. 내가 입력하여 그것을 해결하기 위해 관리 :

    사실 그것은 엄격히 MongoDB를 관련이 없습니다. 어떻게 든 컴퓨터 B의 언어가 올바르게 정의되지 않았습니다. 내가 입력하여 그것을 해결하기 위해 관리 :

    이 명령은 생성하고 필요한 로케일을 구성합니다. 그 단계는 평소처럼 일하고 돌아왔다 mongorestore 후.

  3. ==============================

    3.당신이 ko 페이지를 설치 로케일이있는 경우 LC_ALL = "은 en_US.UTF-8"을 내보내기에만 작동합니다. 당신이 로케일 패키지 (또는 데비안 파생 상품 이외의 다른 배포판에 상당)를 설치하지 않도록하려면, 당신은 대신 사용할 수 있습니다 :

    당신이 ko 페이지를 설치 로케일이있는 경우 LC_ALL = "은 en_US.UTF-8"을 내보내기에만 작동합니다. 당신이 로케일 패키지 (또는 데비안 파생 상품 이외의 다른 배포판에 상당)를 설치하지 않도록하려면, 당신은 대신 사용할 수 있습니다 :

    export LC_ALL=C.UTF-8
    

    이는 여분의 로케일 데이터를 필요로하지 않습니다.

  4. ==============================

    4.당신이 맥 OSX와 SSH를 사용하는 경우 이것은 잘못된 LC_CTYPE 발행 될 수 있습니다.

    당신이 맥 OSX와 SSH를 사용하는 경우 이것은 잘못된 LC_CTYPE 발행 될 수 있습니다.

    $ locale 
    locale: Cannot set LC_CTYPE to default locale: No such file or directory
    locale: Cannot set LC_ALL to default locale: No such file or directory
    LANG=en_US.UTF-8
    LANGUAGE=
    LC_CTYPE=UTF-8
    LC_NUMERIC="en_US.UTF-8"
    LC_TIME="en_US.UTF-8"
    LC_COLLATE="en_US.UTF-8"
    LC_MONETARY="en_US.UTF-8"
    LC_MESSAGES="en_US.UTF-8"
    LC_PAPER="en_US.UTF-8"
    LC_NAME="en_US.UTF-8"
    LC_ADDRESS="en_US.UTF-8"
    LC_TELEPHONE="en_US.UTF-8"
    LC_MEASUREMENT="en_US.UTF-8"
    LC_IDENTIFICATION="en_US.UTF-8"
    LC_ALL=
    

    잘못된 VAR를 설정 해제.

    $ unset LC_CTYPE 
    

    로케일이 잘 작동 여부를 확인합니다.

    $ locale
    LANG=en_US.UTF-8
    LANGUAGE=
    LC_CTYPE="en_US.UTF-8"
    LC_NUMERIC="en_US.UTF-8"
    LC_TIME="en_US.UTF-8"
    LC_COLLATE="en_US.UTF-8"
    LC_MONETARY="en_US.UTF-8"
    LC_MESSAGES="en_US.UTF-8"
    LC_PAPER="en_US.UTF-8"
    LC_NAME="en_US.UTF-8"
    LC_ADDRESS="en_US.UTF-8"
    LC_TELEPHONE="en_US.UTF-8"
    LC_MEASUREMENT="en_US.UTF-8"
    LC_IDENTIFICATION="en_US.UTF-8"
    LC_ALL=
    

    이제 벌금을해야한다 또한 몽고.

  5. ==============================

    5.당신이 그 파일 중 하나를 편집 할 수 있습니다 영구적으로 수정 프로그램을 만들려면 :

    당신이 그 파일 중 하나를 편집 할 수 있습니다 영구적으로 수정 프로그램을 만들려면 :

    그리고 라인 LC_ALL을 추가 = "은 en_US.UTF-8"

  6. ==============================

    6.로케일 세대 않고 데비안 (7)에 동일한 문제가있어 설치 (명령을 찾을 수 없음).

    로케일 세대 않고 데비안 (7)에 동일한 문제가있어 설치 (명령을 찾을 수 없음).

    나는 이런 식으로 해결 :

    su
    apt-get install locales
    dpkg-reconfigure locales # select locales you want!
    

    이제 MongoDB를 시작한다.

    출처

  7. from https://stackoverflow.com/questions/19100708/mongodb-mongorestore-failure-localefacet-s-create-c-locale-name-not-valid by cc-by-sa and MIT license