>  기사  >  데이터 베이스  >  MySQL 파일 시스템 미리보기 (1)

MySQL 파일 시스템 미리보기 (1)

黄舟
黄舟원래의
2016-12-15 11:43:09760검색

Linux에서 MySQL 데이터베이스를 파일 시스템으로 처리할 수 있도록 개발 중인 Linux 파일 시스템입니다. 개발팀은 더 많은 제안을 받기를 희망합니다. 다음 기사는

http://no.spam.ee/~tonu/mysqlfs.html
---------에서 번역되었습니다. ----------

사실 이것은 일반적인 의미의 파일 시스템이 아니지만 디스크 공간이 없습니다. 데이터를 저장하는 MySQL 데몬입니다. SQL 테이블과 일부 기능은 파일 시스템을 통해 구현될 수 있습니다.

1. 어떻게 달성할 수 있나요?

사용 예를 살펴보겠습니다:

[root@localhost /root]# mount -t corbafs -o `cat /tmp/mysqlcorbafs.ior` none /mnt/mysql/

[root@localhost /root]# 마운트

/dev/hda3 on / type ext2(rw)

none on /proc type proc(rw)

/dev/pts 유형 devpts에 없음(rw,gid=5,mode=620)

/dev/hda1 on /mnt/win 유형 vfat(rw,mode=777)

/mnt/linux 유형 vfat의 /dev/hda4(rw,noexec,nosuid,nodev,mode=777)

/mnt/mysql 유형 corbafs의 없음(rw,IOR:01e50d401b00000049444c3a436f72626146532f46696c655379 7374656d3a
312e300000010000000000000030000000010100000a0000003132372e302e302e
310008041800000000000009224bc335663462a01000000ef7ae13c0943c59f)


[root@localhost /root]# ls -la /mnt/mysql/


총 0개


-r -xr-xr-x 1 루트 루트 4096 dets 29 22:21 .uptime

dr-xr-xr-x 1 루트 루트 4096 dets 29 22:21 test

dr- xr- xr-x 1 루트 루트 4096 dets 29 22:21 mysql


[root@localhost /root]# cat /mnt/mysql/.uptime


1994


[root@localhost /root]# cat /mnt/mysql/mysql/user/Host


cpq.spam.ee

cpq. 스팸.ee

localhost

localhost

localhost

localhost

localhost

[root@localhost /root]# cat /mnt/mysql/mysql/user/Insert_priv


N

N

N

아니요

N

N

Y

Y

[root@localhost /root]# umount /mnt/ mysql/


2. 왜 이러는 걸까요?

어떤 경우에는 이렇게 하면 작업이 더 쉬워질 수 있습니다. MySQL과 파일 시스템은 모두 데이터베이스라고 할 수 있지만 개념과 장점, 단점이 완전히 다릅니다. 파일 시스템에서는 이름이 변경되더라도 객체를 빠르고 쉽게 찾을 수 있습니다. 모든 초보자는 아마도 이동/복사/이름 바꾸기/삭제와 같은 작업을 배워야 할 것입니다. 그러나 SQL은 애플리케이션을 사용하여 파일 시스템에 저장된 데이터를 조작합니다. MySQL 파일 시스템은 SQL을 사용자 수준으로 가져옵니다. 사용자는 자신이 알고 있는 방식으로 데이터베이스를 운영할 수 있습니다.


- 신제품이 네트워크를 통해 데이터에 액세스해야 하는 경우 네트워크를 통해 파일 시스템에 액세스할 수 있는 일부 프로토콜과 기타 방법을 지원해야 합니다. MySQL이 해당 플랫폼으로 포팅되지 않은 경우에도 이 방법으로 MySQL 테이블에 액세스할 수 있습니다.


  - 백업 및 버전 관리, 일반 파일 시스템은 모든 백업 소프트웨어를 통해 달성할 수 있습니다. diff를 사용하여 데이터를 비교할 수 있고 cvs를 사용하여 버전을 제어할 수 있습니다.


- 프로그래밍 시간 단축. 현재 날짜나 사이트 이름과 같은 간단한 데이터를 저장해야 하는 경우가 있습니다. 이러한 데이터는 거의 변경되지 않습니다.


연결 서버로 -> 명령 실행 -> 결과 저장

MySQL 파일 시스템을 사용한 후에는 한 문장만 필요합니다: (PHP 구현)


include(¨/mountpoint/database/table/field¨);


또는 다른 방식으로 표현:


include(¨/mnt /mysql/sitedata /topic/todaytopic¨);


이는 이해하기 쉽고 공간을 덜 차지합니다. SAMBA를 통해 /mnt/mysql을 공유하여 SQL 데이터베이스를 직접 수정할 수도 있습니다. 데이터베이스에 직접 텍스트를 쓰거나 복사/붙여넣기 기능을 사용하여 이미지를 데이터베이스에 넣을 수 있습니다. 이는 Perl이나 PHP로 수백 줄의 프로그램을 작성하는 것보다 훨씬 덜 노동 집약적입니다.

3. 공연은 어때요?

이 글을 게시하는 시점에서 이 파일 시스템은 아직 프로토타입 개발 단계이므로 속도가 아직 이상적이지 않습니다. 공식 출시되면 일부 데이터베이스 기능은 SQL을 사용하는 것보다 빠릅니다. 물론 성능이나 기능 측면에서 여전히 SQL과 비교할 수 없는 쿼리가 많으며, 여전히 SQL 문을 통해 완료해야 하는 복잡한 쿼리도 많습니다. 그러나 이렇게 하면 개발 및 교육 시간이 많이 절약되므로 효율성 측면에서도 절약됩니다.


4. 지원되는 테이블 유형:

현재 이 파일 시스템은 MyISAM, DBD, HEAP, ISAM 등 모든 테이블 유형을 지원합니다.

위 내용은 MySQL 파일 시스템을 살짝 엿본 내용입니다(1). 더 많은 관련 글은 PHP 중국어 홈페이지(www.php.cn)를 참고해주세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
이전 기사:mysql의 잠금 문제다음 기사:mysql의 잠금 문제