Person, StudentID 등 명확하고 일관된 레이블과 열 이름을 사용하세요.
SchoolName이 아닌 SchoolName과 같이 테이블 이름에는 복수형 대신 단수형을 사용하세요.
테이블 이름에 공백을 사용하지 마세요.
TblSchool 대신 School, SchoolTable 등 테이블 이름에 불필요한 접두사나 접미사를 사용하지 마세요.
데이터베이스의 비밀번호는 암호화된 후 애플리케이션에서 복호화되어야 합니다. (실제로는 해시 저장이며 단방향 암호화입니다.)
ID 필드로 정수 를 사용합니다. 지금은 필요하지 않을 수도 있지만 관련 테이블 등 향후에는 필요할 것입니다. , 색인 등
인덱싱에 정수 필드를 사용하세요. 그렇지 않으면 큰 성능 문제가 발생합니다.
bit를 부울 필드로 사용하거나 정수 또는 varcha를 사용하는 것은 낭비입니다. 또한 이러한 필드는 "Is"로 시작해야 합니다.
데이터베이스에 액세스하려면 인증을 받아야 합니다. 모든 사용자 관리자 권한을 부여하지 마세요.
더 나은 성능을 위해 "select *" 사용을 피하고 "select [required_column_list]"를 사용하십시오.
프로그램 코드가 더 복잡하다면 Hibernate, iBatis와 같은 ORM 프레임워크를 사용하세요. ORM 프레임워크의 성능 문제는 세부 구성을 통해 해결할 수 있습니다.
더 나은 성능을 위해 자주 사용하지 않는 테이블을 다른 물리적 스토리지로 분할합니다.
중요한 데이터베이스의 경우 클러스터링, 동기화 등 안전한 백업 시스템을 사용하세요.
데이터 무결성을 보장하기 위해 외래 키, null이 아닌 기타 제한 사항을 사용하고 모든 것을 프로그램에 적용하지 마세요.
데이터베이스 문서가 부족하면 치명적입니다. 트리거, 저장 프로시저 및 기타 스크립트를 포함한 데이터베이스 디자인을 문서화해야 합니다.
자주 사용되는 쿼리와 대용량 데이터 테이블에는 인덱스를 사용하세요. 데이터 분석 도구는 색인 방법을 결정하는 데 도움이 될 수 있습니다.
데이터베이스 서버와 웹 서버는 서로 다른 시스템에 배치되어야 합니다. 이렇게 하면 보안이 향상되고 CPU 부담이 줄어듭니다.
일반적으로 사용되는 데이터 테이블에서는 이미지 및 blob 필드를 정의하면 안 됩니다. 그렇지 않으면 성능에 영향을 미칩니다.
성능을 향상하려면 필요에 따라 정규화를 사용해야 합니다. 정규화가 충분하지 않으면 데이터 중복이 발생하고, 정규화가 과도하면 조인과 데이터 테이블이 너무 많아져 성능에 영향을 미칩니다.
데이터베이스 설계에 더 많은 시간을 투자하세요. 그렇지 않으면 나중에 두 배의 시간을 지불하게 됩니다.
많은 프로그램 효율성 문제가 실제로 불합리한 데이터베이스 설계로 인해 발생한다는 것이 시간이 입증했기 때문에 합리적인 데이터베이스를 설계할 수 있는 능력은 전체 소프트웨어와 웹사이트에 매우 중요합니다!
위 내용은 mysql 데이터베이스 설계 기술 분석의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!