Arch Linux에서 MariaDB/mysql_install_db를 설정할 수 없습니다. 권한이 거부되었습니다.

Arch Linux에서 MariaDB/mysql_install_db를 설정할 수 없습니다. 권한이 거부되었습니다.

MariaDB를 설정하는 데 문제가 있습니다. 나는 후속 조치를 취하고 있다아치 리눅스 마리아 데이터베이스 |

Arch Linux에 MariaDB를 설치했습니다.sudo pacman -S mariadb

권한이 있는 새 폴더를 만들었습니다 /mnt/local/int001/MEDIA/Personal/DB.

drwxrwsr-x+ 1 mysql mysql                232 Jul 13 14:34  DB

나는 datadir = /mnt/local/int001/MEDIA/Personal/DB에 추가했다/etc/mysql/my.cnf

mysql내 사용자를 사용자 그룹 에 추가합니다.sudo usermod -a -G mysql myuser

그런 다음 제안된 대로 실행을 시도했지만 sudo mysql_install_db --user=mysql --basedir=/usr --datadir=/mnt/local/int001/MEDIA/Personal/DB다음 오류가 발생했습니다. 소유권이 있어도 왜 이것을 얻는 지 알 수 있습니다 mysql.

편집: 권한을 777로 변경했는데 차이는 없습니다.

편집: 내 시스템에는 SELinux의 흔적이 없습니다.

편집: ACL이 있지만 상위 항목에서 (그리고 재귀적으로) 제거했습니다.

편집: 저는 이 경로로 변경했으며 SU mysql이 경로의 파일을 편집할 수 있습니다.

Installing MariaDB/MySQL system tables in '/mnt/local/int001/MEDIA/Personal/DB' ...

2018-07-13 14:52:02 140714278559680 [Note] /usr/bin/mysqld (mysqld 10.1.34-MariaDB) starting as process 12074 ...
2018-07-13 14:52:02 140714278559680 [ERROR] mysqld: Can't create/write to file '/mnt/local/int001/MEDIA/Personal/DB/aria_log_control' (Errcode: 13 "Permission denied")
2018-07-13 14:52:02 140714278559680 [ERROR] mysqld: Got error 'Can't create file' when trying to use aria control file '/mnt/local/int001/MEDIA/Personal/DB/aria_log_control'
2018-07-13 14:52:02 140714278559680 [ERROR] Plugin 'Aria' init function returned error.2018-07-13 14:52:02 140714278559680 [ERROR] Plugin 'Aria' registration as a STORAGE ENGINE failed.
2018-07-13 14:52:02 140714278559680 [Note] InnoDB: innodb_empty_free_list_algorithm has been changed to legacy because of small buffer pool size. In order to use backoff, increase buffer pool at least up to 20MB.
2018-07-13 14:52:02 140714278559680 [Note] InnoDB: Using mutexes to ref count buffer pool pages
2018-07-13 14:52:02 140714278559680 [Note] InnoDB: The InnoDB memory heap is disabled
2018-07-13 14:52:02 140714278559680 [Note] InnoDB: Mutexes and rw_locks use GCC atomic builtins
2018-07-13 14:52:02 140714278559680 [Note] InnoDB: GCC builtin __atomic_thread_fence() is used for memory barrier
2018-07-13 14:52:02 140714278559680 [Note] InnoDB: Compressed tables use zlib 1.2.11
2018-07-13 14:52:02 140714278559680 [Note] InnoDB: Using Linux native AIO2018-07-13 14:52:02 140714278559680 [Note] InnoDB: Using SSE crc32 instructions
2018-07-13 14:52:02 140714278559680 [Note] InnoDB: Initializing buffer pool, size = 128.0M
2018-07-13 14:52:02 140714278559680 [Note] InnoDB: Completed initialization of buffer pool
2018-07-13 14:52:02 140714278559680 [Note] InnoDB: Highest supported file format is Barracuda.
2018-07-13 14:52:03 140714278559680 [Note] InnoDB: 128 rollback segment(s) are active.
2018-07-13 14:52:03 140714278559680 [Note] InnoDB: Waiting for purge to start
2018-07-13 14:52:03 140714278559680 [Note] InnoDB:  Percona XtraDB (http://www.percona.com) 5.6.39-83.1 started; log sequence number 1600627
2018-07-13 14:52:03 140713784243968 [Note] InnoDB: Dumping buffer pool(s) not yet started
2018-07-13 14:52:03 140714278476544 [Warning] Failed to load slave replication state from table mysql.gtid_slave_pos: 1146: Table 'mysql.gtid_slave_pos' doesn't existERROR: 1  Can't create/write to file '/mnt/local/int001/MEDIA/Personal/DB/mysql/db.MYI' (Errcode: 13 "Permission denied")
2018-07-13 14:52:03 140714278559680 [ERROR] Aborting

답변1

추측일 뿐입니다. 상위 디렉토리에 대한 권한을 완화해 보십시오. 얼마 전에 이 동작을 본 적이 있습니다. 내 기억이 맞다면 이 문제는 "너무 엄격한" 권한 때문에 발생한 것입니다. 두 번째 추측입니다. 경로에 "후행 슬래시"를 추가해 보셨나요?

답변2

mysqld가 액세스할 수 있도록 경로에 재귀적 권한을 추가해 보십시오.

chmod -R <permissions> <path>

동일하게 적용할 수 있습니다.chown -R

또한 파일 시스템 정보를 추가하면 도움이 됩니다.

관련 정보