MySQL 데이터베이스에 저장되는 데이터가 점차 커지면서 원래 데이터를 저장하는 공간이 꽉 차서 mysql에 연결할 수 없게 되었습니다. 따라서 저장된 데이터가 저장되는 위치를 변경해야 합니다. MySQL 5.7에서 데이터베이스의 데이터 저장 위치를 변경하는 방법을 아래 편집기에서 공유해 드리겠습니다.
데이터로 살펴보겠습니다. MySQL 데이터베이스에 저장된 용량이 점차 커지면서 원래 데이터를 저장하는 공간이 가득 차서 mysql에 연결할 수 없게 되었습니다. 따라서 데이터가 저장되는 장소를 변경하는 것이 필요하다. 다음은 프로세스의 몇 가지 단계입니다. 메모해 두고 나중에 검토해 보세요.
1. mysql 데이터가 저장되는 디렉터리를 수정합니다.
수정할 수 있는 곳은 두 곳이 있습니다. 하나는 /etc/my.cnf 파일에서 datadir을 수정하는 것입니다. . 기본적으로:
datadir=/var/lib/mysql
내 /data/ 디렉토리가 비교적 크기 때문에 다음으로 변경합니다:
datadir=/data/mysql/
또한 /etc/init.d/mysqld
파일을 수정하고 datadir=”$result”
를 다음으로 변경합니다:
datadir=”/data/mysql”
2. mysql 서비스 중지
service mysql stop
3. 새로운 데이터 저장 디렉터리 생성
mkdir /data/mysql
4. 새로운 데이터베이스 저장 디렉터리에 데이터를 추가합니다
mv /usr/local/mysql/data/* /data/mysql
여기서 몇 가지 지식을 추가하자면 innoDB 엔진과 MyISAM 엔진의 데이터 파일은 다릅니다.
MyISAM 엔진의 경우 데이터 파일은 "*.frm", "*.MYD" 및 "의 세 가지 파일과 함께 "/var/lib/mysql" 디렉터리에 저장됩니다. *.MYI" 아래의 해당 데이터베이스 폴더에 있습니다. 해당 파일을 새 데이터 저장 디렉터리로 직접 이동하면 됩니다.
innoDB 엔진의 경우 (일반적으로) "$innodb_data_home_dir” 的ibdata1
파일에 데이터가 저장되며, 구조체 파일은 table_name.frm에 존재합니다.
5. mysql을 수정합니다. 데이터베이스 디렉터리 권한 및 구성 파일
chown mysql:mysql -R /data/mysql/
6. 소켓 수정
/etc/my.cnf 두 곳에서 소켓 수정
socket=/data/mysql/mysql.sock
/var/lib/mysql/mysql.sock
ln -s /data/mysql/mysql.sock /var/lib/mysql/mysql.sock
에 연결 파일을 생성합니다.7. mysql 서비스를 다시 시작합니다
실행
service mysql restart
데이터베이스에서 읽기 및 쓰기 작업을 시작했는데 다음 문제를 발견했습니다.
읽기 및 쓰기:
ERROR 1146 (42S02): Table ** doesn't exist
테이블 생성:
ERROR 1005 (HY000): Can't create table ‘runoob_tbl' (errno: 13)
해결책 :
innoDB 엔진 테이블이 정상화되도록 /data/mysql 디렉토리에서 ib_logfile* 파일을 삭제하세요.
실행
mysql> REPAIR TABLE ***;. MySQL 관련 주제는
MySQL.
데이터베이스 작업Mysql 시작하기Mysql root 비밀번호 조작 방법
[관련 권장 사항]
1.
Mysql 무료 동영상 튜토리얼mysql 가져오기 방법에 대한 자세한 설명 빅 데이터를 Navicat에 보고MYSQL의 테이블 잠금 해제 및 잠금에 대한 자세한 예속도를 높이는 방법 수백만 개의 항목에 대한 데이터베이스 쿼리5가지 일반적인 데이터베이스 설계 실수위 내용은 MySQL 5.7 데이터베이스 데이터 저장 위치 변경 상세 예의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!