Ubuntu 17에서 Mysql에 대한 전역 변수 설정

Ubuntu 17에서 Mysql에 대한 전역 변수 설정

일부 전역 변수를 설정하고 구독자 메일러 소프트웨어가 올바르게 작동하도록 세션을 설정하려고 합니다. 하지만 해당 변수를 my.cnf파일 에 설정하고 서버를 다시 시작하려고 하면 mysql다음 오류가 발생합니다.

Job for mysql.service failed because the control process exited with error code.
See "systemctl status mysql.service" and "journalctl -xe" for details.

아래는 my.cnf파일 입니다

# Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; version 2 of the License.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301 USA

!includedir /etc/mysql/conf.d/
!includedir /etc/mysql/mysql.conf.d/

mysql> SET GLOBAL sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION'

mysql> SET SESSION sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION'

답변1

첫째, 복사-붙여넣기 문제가 발생한 것 같습니다. 이는 mysql>콘솔 클라이언트의 프롬프트이므로 구성 파일에 있어서는 안 됩니다.

둘째, 변수를 설정할 때구성 파일[section], 그들은 한 줄에 하나씩 해당 헤더 아래에 속하며 키 값은 =등호로 구분됩니다.

따라서 추가 /etc/mysql/mysql.conf.d/mysqld.cnf아래의 어느 곳 에서나 다음을 수행하십시오 [mysqld].

sql_mode = STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

관련 정보