auto_increment_increment
다음 명령을 사용하여 MySQL 변수를 설정하고 있습니다 .
mysql -u root -p -e "SET GLOBAL auto_increment_increment = 10;"
그리고 MySQL을 다시 시작할 때까지 모든 것이 작동합니다( 를 사용하여 sudo service mysql restart
). 그런 다음 변수는 기본값으로 돌아갑니다.
다시 시작하기 전에:
mysql> SHOW VARIABLES LIKE 'auto_%';
+--------------------------+-------+
| Variable_name | Value |
+--------------------------+-------+
| auto_increment_increment | 10 |
| auto_increment_offset | 1 |
+--------------------------+-------+
2 rows in set (0.00 sec)
다시 시작한 후:
mysql> SHOW VARIABLES LIKE 'auto_%';
+--------------------------+-------+
| Variable_name | Value |
+--------------------------+-------+
| auto_increment_increment | 1 |
| auto_increment_offset | 1 |
+--------------------------+-------+
2 rows in set (0.00 sec)
이 변경 사항을 영구적으로 적용하려면 어떻게 해야 합니까?
답변1
귀하의 명령은 동작을 일시적으로만 변경합니다. 따라서 /etc/mysql/conf.d/
. 의 변경을 피하십시오 /etc/mysql/my.cnf
. 왜? 내 대답의 끝 부분을 참조하십시오.
sudo nano /etc/mysql/conf.d/my.cnf
그리고 추가하세요
[mysqld]
auto-increment-increment = 10
구성을 다시 로드하거나 서버를 다시 시작하십시오.
표준에서 따옴my.cnf
#
# * IMPORTANT: Additional settings that can override those from this file!
# The files must end with '.cnf', otherwise they'll be ignored.
#
!includedir /etc/mysql/conf.d/
답변2
ssta가 지적한 대로 구성 파일을 사용할 수 있습니다. 아마도 가장 좋은 장소는 my.cnf
시작 시 사용되는 파일일 것입니다. 다음과 같이 변경합니다.
...
[mysqld]
auto_increment_increment = 10
...
파일을 저장하고 서버를 다시 시작하십시오.
sudo service mysql restart
그러면 작동할 것입니다(직접 테스트하지는 않았습니다). 흥미롭게도 왜 그런 행동을 원합니까?