그래서 Hostinger의 VPS Hosting Plan 2에 호스팅된 사이트가 있고 데이터베이스로 MySQL을 사용하며 내 가상 머신의 OS는 Ubuntu 18.04입니다.
strict mode
사이트의 일부 부분이 작동하려면 전체 시간 동안 MySQL을 전역적으로 비활성화해야 합니다 . 맥락상 저는 현재 서버측만 관리하고 있으므로 이 사이트에서 을(를) 비활성화해야 하는 부분을 수정할 수 없습니다 strict mode
. 이러한 수정 사항은 개발자 측에 있으며 결국 어느 시점에 이를 처리하게 됩니다.
이제 내가 직면한 문제는 을 비활성화하면 strict mode
몇 시간(또는 하루) 후에 자동으로 활성화된다는 것입니다. 이는 Hostinger의 VPS 서버에 있는 것으로 보이는 예약된 서버 다시 시작 때문입니다. 서버가 다시 시작될 때마다 MySQL이 strict mode
다시 활성화됩니다.
strict mode
내가 다시 켤 때까지 영구적으로 비활성화되도록 하려면 어떻게 해야 합니까 ? 나는 분명히 몇 시간마다 그것을 켜고 싶지 않습니다 ... :)
편집: 저는 현재 set global sql_mode='';
MySQL을 비활성화하는 데 사용했습니다 strict mode
.
답변1
아래 명령을 사용하여 mysql 엄격 모드를 비활성화하면 서버를 다시 시작한 후 되돌려집니다.
전역 sql_mode='' 설정;
영구적으로 설정/비활성화하려면 mysql conf 파일의 값을 편집해야 합니다.
/etc/mysql/my.cnf 또는/etc/my.cnf귀하의 OS에 따라.
다음 줄을 찾으세요:
sql_mode = "STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"
아래 줄로 바꾸세요. 해당 줄을 찾을 수 없으면 [mysqld] 섹션 아래에 줄을 삽입하세요([mysqld] 섹션이 없으면 새로 만드세요).
[mysqld]
sql_mode= ""
변경 사항을 적용하려면 MySQL 서비스를 다시 시작하세요.