Programming49 mariaDB 사용자 등록 / 패스워드 / 권한 설정 mariaDB 사용자 등록 / 패스워드 / 권한 설정 1. 사용자 등록create user 'userid'@'localhost' identified by '12345678'; 2. 사용자 패스워드 변경SET PASSWORD FOR ‘userid’@‘localhost’ = PASSWORD('12345678'); 3. 데이터 베이스 사용 권한 설정GRANT ALL PRIVILEGES ON dbname.* TO 'userid'@'localhost' IDENTIFIED BY '12345678'; 4. 위 내용을 서버 내부(localhost)에서만 접속하용하므로, 외부접속을 허용하게 하거나, 특정 ip에서 접근을 허용하게 하려면 위 내용 중 'localhost' 부분에 '%' 나 '123.123.123.12.. 2025. 10. 23. 특정 날짜 필드에 입력된 날짜 값을 1년 전으로 업데이트 특정 필드의 날짜 값을 1년 전으로 업데이트 (입력되어 있는 값을 기준으로 1년 전으로) update table set 필드명 = DATE_SUB(필드명, INTERVAL 1 YEAR) where ...... ; 끝. 2025. 10. 16. 플러터 하위 버전으로 다운그레이드 플러터 업그레이드 후 기존 앱 호환성 문제로 인해 하위 버전으로 내려야 할때가 있다.이런때 다운그레이드가 필요하다. 먼저, pc에 플러터가 설치되어 있는 경로를 확인flutter doctor -v 경로를 확인했으면 그 경로로 이동한다. (아래는 예제 경로)cd /opt/homebrew/Caskroom/flutter/{최초설치버전}/ 현재 채널 및 버전 확인 flutter --version 버전 히스토리 확인https://github.com/flutter/flutter/blob/master/CHANGELOG.md 위 링크에서 버전을 확인 후 원하는 특정버전으로 체크아웃 (아래는 3.22.0로 선택하는경우)git checkout 3.22.0 위 버전으로 다운로드 / 설치 및 정보 확인 (체크하웃 이후 .. 2025. 6. 12. 날짜별 가입자 수 조회 쿼리 날짜별 가입자 수 조회 쿼리SELECT DATE_FORMAT(regDate, '%Y-%m-%d') as dates, COUNT(no) FROM member GROUP BY DATE_FORMAT(regDate, '%Y-%m-%d') order by dates;끝. 2025. 2. 27. cra 로 생성한 프로젝트에 빌드시 콘솔로그 코드 모두 제거하기 (eject 사용안함) * cra 로 생성한 프로젝트에 babel 재정의 하여 빌드시 콘솔로그 코드 모두 제거 (eject 사용안함) 1. 관련 컴포넌트 설치npm i -D customize-cra react-app-rewired babel-plugin-transform-remove-console 2. package.json 파일 내 react-scripts 를 react-app-rewired 로 변경 "scripts": { "start": "react-app-rewired start", "build": "react-app-rewired build", "test": "react-app-rewired test", "eject": "react-scripts eject"} 3. 프로젝트 루트에 config-overrides.js .. 2025. 2. 26. 애플 앱스토어에 플러터 앱 배포 하기 ios build & deploy : 빌드 및 배포 순서 (맥 기준) 1. 버전 올렸는지 확인 (pubspec.yml) 2. 디버깅 중이면 디버깅을 중단하고, xcode 가 실행중이면 종료한다. (중요) 3. 프로젝트 디렉토리에서 아래 명령 으로 빌드한다.flutter build ipa 4. 빌드가 성공하면 아래 경로에 파일이 생성됐는지 확인한다.build/ios/archive/Runner.xcarchivebuild/ios/ipa/tosomebody.ipa 5. 파인더에서 아래 파일을 우클릭하여 XCode 로 연 뒤 빌드한 앱 선택하고 validate, distribute 순차 실행build/ios/archive/Runner.xcarchive 6. 브라우저로 앱스토어 이동한 뒤 testFlight 에 .. 2025. 2. 26. 구글 플레이스토어에 플러터 앱 배포 하기 구글 플레이 콘솔에 계정은 있다고 치고, 1. 버전 올렸는지 확인 (pubspec.yml)..version: 1.5.5+55.* 버전 숫자 증가 : 위의 버전을 업데트하려면 1.5.6+56 으로~ 2. 프로젝트 디렉토리에서 아래 명령 으로 빌드한다.flutter build appbundle 3. 빌드가 성공하면 아래 경로에 파일이 생성됐는지 확인한다. build/app/outputs/bundle/release/app-release.aab 4. 플레이스토어 콘솔 접속하여 앱선택 > 내부테스트 에 위 파일 업로드 5. 디버그 정보 업로드./build/app/intermediates/merged_native_libs/release/out/lib 안의 디렉토리를 통째로 압축하여 하나의 zip파일로 만들어 올린다.. 2025. 2. 26. pm2 로그 관리 : pm2 logrotate pm2 로그를 효율적으로 관리하기 위해 pm2 logrotate 를 사용한다.로그파일을 용량설정에 따라 날짜별로 잘 분리해주며, 오래된 파일은 삭제도 해준다. pm2 logrotate 설치하기pm2 install pm2-logrotate@2.6.0 * 2.6.0 이 최신버전이 아니지만 최신버전인 2.7.0 에 문제가 있어 @2.6.0 버전으로 설치한다. (로그를 날짜별로 잘 분리해주지 못하는 버그 있음) logrotate 의 설정 상태 조회pm2 conf위 목록에 나온 명령셋을 실행하면 설정을 변경할 수 있다. ex) max_size 를 1M로 변경pm2 set pm2-logrotate:max_size 1M node 의 전반적인 상황 모니터링pm2 monit 끝 2025. 2. 25. mariaDB 계정 패스워드 변경하기 sql> SET PASSWORD FOR 'userid'@'localhost' = PASSWORD('mypassword');sql> SET PASSWORD FOR 'userid'@'%' = PASSWORD('mypassword');끝 2025. 2. 25. nodejs 무중단 서비스 : pm2 nodejs 로 서버를 구성하면, 오류발생시 node서버가 죽어버리는 경우가 생긴다. (죽으면 그대로 서비스 정지)pm2모듈은 위와 같은경우 자동으로 재시작하게 해준다. 그 외 클러스터, 로그 등등 편리한 점이 많으니 꼭 사용하자. pm2 설치npm install -g pm2 서비스의 실행 pm2 start {파일명} 서비스 실행 목록 보기pm2 list 상태 확인pm2 status 서비스 정지pm2 stop {파일명} 서비스 리스타트pm2 reload {파일명}또는pm2 restart {파일명} 프로세스 삭제pm2 delete {파일명} 로그 보기pm2 log {process name | process id] 끝. 2025. 2. 25. Linux : nodejs, npm 개발환경 구성 (+ 버전관리 : nvm) 설치하기 이전에 먼저 저장소 업데이트 진행apt update && apt upgrade nodejs, npm 설치apt install nodejs npm 설치된 node 버전 확인node -v버전을 확인 해보고, 원하는 버전이 아닌경우 아래에서 추가 설정한다. (디폴트로 설치된버전은 한참 아래 버전이므로, 대부분 원하는 버전이 아닐듯...) nvm 설치 (nodejs 버전 관리용)curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bashsource ~/.bashrc nodejs 최신 버전 목록 조회nvm list-remote 위에서 조회된 버전을 확인 후 원하는 버전으로 선택하여 설치 (아래는 20.18.3 를 선택하여 .. 2025. 2. 25. 특정필드값을 콤마로 붙여 조회하기 쿼리 select GROUP_CONCAT(email) AS user_emails from users; * 회원 디비내의 모든 회원의 메일주소를 콤마로 붙여 한번에 조회 2025. 2. 12. 이전 1 2 3 4 5 다음