'Ubuntu/삽질하기'에 해당되는 글 3건

  1. 2024.05.19 MongoDB 실행 오류
  2. 2021.03.20 javascript 2차원배열의 얕은 복사
  3. 2021.02.23 그래픽 드라이버 nouveau 에서 nvidia로 변경하기

MongoDB 실행 오류

Ubuntu/삽질하기 2024. 5. 19. 21:02
brew tap mongodb/brew
brew install mongodb-community@7.0
brew services start mongodb-community@7.0

위 명령어들을 실행해서 몽고디비를 깔고 실행을 하면, 간혹 서버의 상태가 에러로 표시되는 경우가 있다.

❯ brew services start mongodb/brew/mongodb-community@6.0

==> Successfully started `mongodb-community@6.0` (label: homebrew.mxcl.mongodb-c
❯ brew services
Name                  Status      User   File
mongodb-community@6.0 error  3584 ihojun ~/Library/LaunchAgents/homebrew.mxcl.mongodb-community@6.0.plist
postgresql@14         none

나 같은 경우에는 디렉토리 접근 권한이 문제였어서, 이를 해결하기 위해 디렉토리 접근 권한을 변경해주었다.

1. 데이터 디렉토리와 그 안의 모든 파일들의 소유권을 현재 사용자로 변경합니다:

sudo chown -R `id -un` /opt/homebrew/var/mongodb

2. 데이터 디렉토리와 그 안의 모든 파일들에 적절한 권한을 부여합니다:

sudo chmod -R 755 /opt/homebrew/var/mongodb

3. 로그 디렉토리와 그 안의 모든 파일들의 소유권을 현재 사용자로 변경합니다:

sudo chown -R `id -un` /opt/homebrew/var/log/mongodb

4. 로그 디렉토리와 그 안의 모든 파일들에 적절한 권한을 부여합니다:

sudo chmod -R 755 /opt/homebrew/var/log/mongodb

이렇게 설정 한 후 다시 서버를 실행하면 정상적으로 작동하는것을 볼 수 있었다.

참고: Intel 버전과 M1 버전의 맥북은 경로가 다르니 경로를 확인 할 것.

:

javascript 2차원배열의 얕은 복사

Ubuntu/삽질하기 2021. 3. 20. 16:13
let arr = [[1,2],[3,4]]
let arr2 = arr.slice()
arr2[0][0] = 5
//arr의 값은?

 

위의 문제에서 arr의 값은 아주 소름돋게도 [[5,2],[3,4]]가 된다.

arr.slice()함수가 원본배열을 그대로 복사해서 arr2에 넣어줘서 arr2의 값을 아무렇게나 바꿔줘도 원본 배열인 arr의 값은 안바뀔줄 알고 한참을 헤맸다... 그러다가 혹시나 하는 마음에 찍어 보니 원본배열을 바꾸고있었다!!! 

slice()함수가 배열안의 값을 하나씩 끄집어 내서 넣어주는 방식으로 복사가 이루어 지다보니 결국 arr2자체는 arr의 주소값을 참조하지 않지만 arr2의 요소 하나하나는 arr의 요소들의 주소값을 참조를 하고 있었던것이다.

따라서 for문을 이용해 복사를 해줘야한다... ㄷㄷ 소름

'Ubuntu > 삽질하기' 카테고리의 다른 글

MongoDB 실행 오류  (0) 2024.05.19
그래픽 드라이버 nouveau 에서 nvidia로 변경하기  (0) 2021.02.23
:

그래픽 드라이버 nouveau 에서 nvidia로 변경하기

Ubuntu/삽질하기 2021. 2. 23. 00:24

'Ubuntu > 삽질하기' 카테고리의 다른 글

MongoDB 실행 오류  (0) 2024.05.19
javascript 2차원배열의 얕은 복사  (0) 2021.03.20
: