MYSQL과 SQL Server 2014 Express의 차이점은 무엇입니까?


대답 1:

매일 MySQL과 SQL Server 2014를 함께 사용하는 사람으로서 내가 가장 큰 차이점이라고 생각하는 것 (각각의 사람들이 좋아하는 것과 싫어하는 것)을 알려줄 수 있습니다

SQL 언어 구현

SQL Server는 그 자체로 큰 역사를 가지고 있으며 각 쿼리에는 실행 계획이 필요하다는 전제를 기반으로 엔진을 구축했으며 SQL Server에는 쿼리 비용을 시각적으로 분석하여 쿼리를 최적화하는 더 나은 도구가 있습니다. MySQL에는 이러한 종류의 분석 도구가 없거나 비용을 지불해야합니다.

MySQL에서는 다음 작업을 수행 할 수 있습니다. ztable 그룹에서 a, b, c + y, count (d)를 1,2 씩 선택합니다. 3. SQL Server에서는 다음을 수행해야합니다. a, b, c + y, count ( d) a, b, c + y에 의한 ztable 그룹의 카운터로서.

MySQL에서는 LIMIT 절을 사용하여 쿼리를 제한합니다. 예를 들면 다음과 같습니다.

SELECT * FROM SomeTable Limit 50, 10을 선택하십시오. 이는 Query의 결과 (행 50-59 행)를 제공합니다. 여러 가지에 유용합니다.

SQL Server는이 SELECT * FROM dbo.SomeTable OFFSET 50 ROWS FETCH NEXT 10 ROWS 만 사용합니다.

같은 작업을 수행 할 수 있지만 SQL Server에서 더 많은 내용을 작성해야합니다.

MySQL에서는 if (some_condition = true, useThisValueIfTrue, useThisValueIfFalse)를 사용할 수 있으며 CASE : CASE WHEN a = true 그런 다음 1 ELSE 0 END를 SomeValue로 사용할 수도 있습니다. SQL Server에서는 CASE 만 있습니다. 각 쿼리에 대해 더 많은 글을 쓸 수 있습니다.

반면에 SQL Server는 복잡한 쿼리와 관련하여 훨씬 더 많은 옵션을 제공합니다. CROSSTAB 쿼리를 생성하는 PIVOT, CROSSJOIN 및 고급 쿼리를 위해 SQL Server를 정말 멋지게 만드는 다른 많은 기능이 있습니다.

데이터를 삽입 할 때 MySQL에서 다음을 수행 할 수 있습니다.

mytable set a = value, b = anothervalue에 삽입하십시오.

SQL Server에서는 클래식 만 사용할 수 있습니다.

mytable (a, b) 값에 삽입 (값, 다른 값)

또는

mytable 값에 삽입 (값, 다른 값)

이제 2, 3, 4 열에서 이것은 가장 성가신 일이 아니지만 40, 50 열을 밀 때 실수를하지 않고 특히 복잡한 계산 값이있을 때 삽입하는 것이 고통 스럽습니다.

따라서 MySQL은 간단한 쿼리, 2-3 테이블 쿼리에서 SQL Server를 쉽게 능가합니다. 그러나 길고 복잡한 쿼리에서 SQL Server는 King입니다.

백업

다시 한 번, SQL Server는 복잡한 상황을 고려하여 구축되었으며, 전체 백업을 수행하는 데는 적어도 3 가지 방법이 있으며, 복잡한 증분 백업, 이진, 파일 시스템 및 스크립트가 있습니다. 아마도 바이너리를 고수해야하지만 SQL SERVER를 복원 할 때 잘 알고 있어야하는 많은 보안 문제가 있습니다. SQL Server에서 백업을 복원하는 것은 중요하지 않습니다. 당신이하고있는 일을 알아야하거나 데이터베이스를 망칠 수 있습니다. 또한 데이터베이스가 실제로 작은 경우가 아니면 SQL SERVER에서 SQL 파일 복원을 사용하지 않는 것이 좋습니다. 영원히 걸리고 때로는 덤프가 실패하고 45 분에서 1 시간 후에 알게됩니다. 운이 좋으면 .

반면에 MySQL은 SQL을 파일로 덤프하고 해당 SQL을 복원하는 것입니다. 작동하고 간단하며 모든 매체를 쉽게 훈련시켜 사용자가 백업 작업을 쉽게 할 수 있으며 번거 로움없이 쉽게 할 수 있습니다. 그러나 보안을 직접 유지 관리해야하며 환경에 따라 때때로 번거로울 수 있습니다.

디스크 사용량

스토리지가 저렴하기 때문에 디스크 사용이 중요하지 않다고 말한 Quora의 어딘가를 읽었습니다. 글쎄요, 그래도 여전히 낭비하기 때문에 어리석은 일입니다.

글쎄, MySQL은 매우 컴팩트하여 2003 년부터 시작된 소규모 회사에 몇 번 설치했으며 데이터는 10GB에 도달하지 못했으며 수백만 행의 테이블이 있지만 여전히 데이터의 비율이 증가하지 않았습니다.

SQL Server에는 2 개월 만에 2GB를 소비 한 다른 설치가있었습니다! SQL Server를 유지 관리하고, 로그를 정리하고, SQL Server를 사용하여 데이터베이스를 유지 관리하고 각 데이터를 처리하는 방법을 알고있는 사람을 갖도록하기 위해 자주 바이너리를 백업해야합니다. 사용자 수, 설치의 복잡성, 처리중인 데이터 유형에 따라 DBA가 어떤 위치에 있어야하는 이유도 있습니다. MySQL은 중간 수준의 숙련 된 사용자로 유지 관리 할 수 ​​있으며 문제가 없습니다.

또한 SQL 프로파일 러 및 SQL 에이전트가 없으면 SQL Server에서 수행 할 수없는 몇 가지 사항이 있습니다. MySQL은 하나 이상의 서비스없이 모든 것을 자체적으로 수행 할 수 있습니다.

엔터프라이즈 규모와 복잡성에 따라 SQL Server를 사용하는 것이 좋습니다. 그러나 이러한 복잡성이 필요하지 않으면 MySQL은 좋은 경쟁자입니다.

저장된 절차, 기능 및 UDFS

이것은 RDBMS에서 대담한 땅입니다. 심지어 MySQL의 SP에서 Udemy Course를 만들고 있습니다. 그러나 SP, 트리거, 함수 및 MySQL을 좋아하는 한 SQL 서버에 제공해야합니다.

이제이 말을하기 전에 저를 추가하기 전에 SQL Server의 SP는 빠르고 복잡하며 C # 및 Visual Basic과 같은 다른 언어로 쉽게 컴파일 할 수있는 유틸리티가 많이 있습니다. MySQL에서 임시 테이블보다 더 빠르고 쉽게 작동 할 수있는 TABLE 변수를 작성할 수도 있습니다. 그들은 많이 가고 있습니다.

MySQL은 사용자 정의 함수 (User Defined Functions)도 가질 수 있지만 C에 능숙해야합니다. 그렇다면 걱정할 것이 없습니다. 우리 중 많은 사람들이 아닙니다.

물론 더 많은 것이 있지만 아이디어를 얻길 바랍니다.

행운을 빌어 요!


대답 2:

대기업 선택에서 확장 된 SQL Server Express, 업무에 SQL을 활용하면 몇 가지 대안을 이용할 수 있습니다. SQL 문의 확인은 접두사로 스크리닝 할 수있는 수많은 것 중 하나 일뿐입니다.

SQL Server Express는 다양한 관심 지점을 제공합니다. 첫 번째이자 가장 중요해 보이는 것은 SQL Server와의 다양성과 조정 기능입니다.

더 읽기 : SQL Server Express | SQL Server Express 버전