Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggregated column 'returntr_prod.tbl_customer_pod_uploads.id' which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by
워크벤치로 db 서버에 접속하여 아래와 같이 설정해 주었더니 해결 되었다.
SET GLOBAL sql_mode=(SELECT REPLACE(@@sql_mode,'ONLY_FULL_GROUP_BY',''));
3. Mysql 여러개의 레코드 update, delete할 때 안전모드 해제
mysql에서 한 개 이상의 레코드를 업데이트 하려는데 아래와 같은 에러가 발생하였다.
Error Code: 1175. You are using safe update mode and you tried to update a table without a WHERE that uses a KEY column To disable safe mode, toggle the option in Preferences -> SQL Editor and reconnect.
테이블에서 key를 이용한 (where id = 23 같이) update와 delete만을 허용하도록 되어 있는데, 그 보다 큰 범위에 적용하는 sql의 경우 workbench에서 경고를 주는 것이다.
아래와 같은 sql로 환경변수를 변경해 준다. (safe 모드 해제)
set sql_safe_updates=0;
4. 파이어 베이스 로그인 오류 Error: Command requires authentication, please run firebase login
오류에서 알 수 있듯, 권한이 부여되지 않았기에 로그인을 해주면 된다.
콘솔에 아래 명령어를 입력해 로그인을 해준다.
firebase login
Error: Cannot run login in non-interactive mode. See login:ci to generate a token for use in non-interactive environments.
지난 10월 한달 동안 프로젝트 내에서 백엔드 개발을 담당했는데, 아직 개발 단계라 SSL을 적용하지 않은 http 통신으로 rest api를 구축하였다. 내 테스트용 디바이스는 출시한지 꽤 날짜가 지난 넥서스였는데, api와 통신에 문제가 없어서 괜찮은 줄 알았다...
그런데 다른 휴대폰에서 동작이 안되서 원인이 뭘까하고 찾아보다가(욕을 많이 먹었다)
안드로이드에서는 기본적으로 HTTP 접근을 허용하지 않는단 것을 알게 되었다. 그래서 기록해둔다.
안드로이드 Pie(API28)부터는 cleartext HTTP를 비활성화한다.
그러므로 API28 버전 이후부터는 강화된 네트워크 보안 정책으로 인해
Http에 접근하려면 cleartext HTTP를 활성화시켜야 한다.
AndroidManifest.xml 파일 내부에 application 태그 내부에android:usesCleartextTraffic="true"로 설정을 추가해주면 된다.