Vra

Ek is'n ASP.NET ontwikkelaar wat gebruik word Microsoft SQL Server vir al my databasis behoeftes (beide by die werk en vir persoonlike projekte).

Ek oorweeg om te probeer om uit die LAMP stapel vir'n paar van my persoonlike projekte.

Wat is'n paar van die belangrikste verskille tussen MySQL en SQL Server?Is die gebruik van gestoor prosedures 'n algemene praktyk in MySQL?

Enige raad of die bronne wat jy wil aanbeveel om my te help met die skakelaar?

Aan diegene wat ervaring met beide, is daar enige vermiste funksies van MySQL?

Was dit nuttig?

Oplossing

Een ding wat jy hoef te kyk uit vir die redelik ernstige verskille in die manier waarop SQL Server en MySQL implementeer die SQL syntax.

Hier is 'n lekker vergelyking van verskillende SQL Implementaties .

Byvoorbeeld, 'n blik op die top-N artikel. In MySQL:

SELECT age
FROM person
ORDER BY age ASC
LIMIT 1 OFFSET 2

In SQL Server (T-SQL):

SELECT TOP 3 WITH TIES *
FROM person
ORDER BY age ASC

Ander wenke

Baie van die kommentaar hier klink meer soos godsdienstige argumente as 'n werklike lewe state. Ek het gewerk vir jare met beide MySQL en MSSQL en beide is goeie produkte. Ek sou kies MySQL hoofsaaklik gebaseer op die omgewing wat jy besig is op. Die meeste open source projekte gebruik MySQL, so as jy gaan in daardie rigting MySQL is jou keuse. As jy iets met Net ontwikkel sou ek kies MSSQL, nie, want dit is baie beter, maar net veroorsaak dit is wat die meeste mense gebruik. Ek is eintlik op die oomblik op 'n Projek wat ASP.NET gebruik met MySQL en C #. Dit werk perfek fyn.

Ek kan nie glo dat niemand genoem dat MySQL ondersteun nie Common Table Expressions (CTE) / "met" state. Dit is 'n mooi irriterende verskil.

MySQL is meer geneig om databasis korrupsie kwessies het, en dit maak hulle nie outomaties op te los wanneer dit gebeur. Ek het gewerk met MSSQL sedert weergawe 6.5 en kan nie onthou 'n databasis korrupsie probleem neem die databasis op die regte pad. Die paar keer wat ek met MySQL gewerk in 'n produksie-omgewing, 'n databasis korrupsie probleem het die hele databasis af totdat ons hardloop die magic "asseblief los my korrupte indeks" ding van die instruksies.

MSSQL se transaksie en joernaal stelsel, in my ervaring, hanteer net oor enige iets - insluitend 'n krag siklus of hardeware mislukking -. Sonder databasis korrupsie, en as daar iets kry opgemors dit vasgestel dit outomaties

Dit is my ervaring, en Ek sal bly wees om te hoor dat hierdie is vasgestel word of ons iets verkeerd doen.

http://dev.mysql.com/ doc / Refman / 6.0 / af / beskadig-myisam-tables.html

http://www.google.com/ soek? q = site% 3Abugs.mysql.com + indeks + korrupsie

Om eerlik te wees, ek kan nie'n enkele rede om te gebruik MySQL eerder as MSSQL.Die kwessie voor gebruik te word koste, maar SQL Server 2005 Express is gratis, en daar is baie van die web hosting maatskappye wat bied'n volledige hosting met sql server vir minder as $5.00 per maand.

MSSQL is makliker om te gebruik en het baie funksies wat nie bestaan nie in die MySQL.

Alles in MySQL blyk te wees gedoen nader aan die metaal as in die MSSQL, En die dokumentasie behandel dit dat die pad.Veral vir die optimalisering, sal jy nodig het om te verstaan hoe indekse, opset van die stelsel, en die optimizer interaksie onder verskillende omstandighede.

Die "optimizer" is meer'n ontleder.In die MSSQL jou navraag plan is dikwels'n verrassing (gewoonlik goed, soms nie).In MySQL, is dit pretty much doen wat jy gevra word om dit te doen, die manier waarop jy verwag om dit te.Wat beteken dat jy jouself moet'n diep begrip van die verskillende maniere waarop dit gedoen kan word.

Nie gebou rondom'n goeie TRANSAKSIE model (standaard MyISAM enjin).

Lêer-stelsel setup is jou probleem.

Al die databasis konfigurasie is jou probleem - veral verskeie kas groottes.

Soms lyk dit die beste om te dink aan dit as'n ad-hoc, verheerlik isam.Codd en Datum dra nie veel gewig hier.Hulle sou sê dit met geen verleentheid.

Ek dink een van die groot dinge te kyk uit vir is dat weergawes voor MySQL 5.0 nie uitsig het, snellers, en gestoor prosedures.

Meer van hierdie saak word verduidelik in die MySQL 5.0 Aflaai bladsy .

@abdu

Die belangrikste ding wat ek gevind het dat MySQL het meer as MSSQL is tydsone ondersteuning - die vermoë om mooi te verander tussen tydsones, respek vir daglig besparings is fantasties

.

Vergelyk hierdie:

mysql> SELECT CONVERT_TZ('2008-04-01 12:00:00', 'UTC', 'America/Los_Angeles');
+-----------------------------------------------------------------+
| CONVERT_TZ('2008-04-01 12:00:00', 'UTC', 'America/Los_Angeles') |
+-----------------------------------------------------------------+
| 2008-04-01 05:00:00                                             |
+-----------------------------------------------------------------+

om die betrokke by hierdie antwoord .

As vir die "makliker om te gebruik 'n opmerking, sou ek sê dat die punt is dat hulle anders is, en as jy weet een, sal daar 'n oorhoofse in die leer van die ander wees.

Beide is DBBS se Produk SQL Server is 'n kommersiële toepassing terwyl MySQL is 'n opensouces application.Both die produk sluit in soortgelyke funksie, maar SQL Server moet gebruik word vir 'n onderneming oplossing, terwyl mysql n kleiner kan pas implementation.if jy kenmerk moet soos herstel, replikasie, granalar sekuriteit en betekenisvolle, SQL server moet jy

MySql neem minder ruimte op die hardeskyf, en gebruik minder geheue en CPU as doen SQL Server

  

Enigiemand het 'n goeie ondervinding met 'n   "Port" van 'n databasis van SQL Server   MySQL?

Dit moet redelik pynlik wees! Ek oorgeskakel weergawes van MySQL uit 4.x om 5.x en verskeie state sal nie meer werk as wat hulle gewoond is. Die navraag ontleder is "verbeter" sodat state wat voorheen ingeskakel vir prestasie nie meer sou werk as wat verwag is.

Die les geleer het uit die werk met 'n 500GB MySQL databasis: Dit is 'n subtiele onderwerp en niks anders nie as onbenullige

@Cebjyre. Die IDE of Enterprise Manager of Management Studio is beter as enigiets wat ek tot dusver vir MySQL gesien. Ek sê: "makliker om te gebruik", want ek baie dinge kan doen in MSSQL waar MySQL het geen eweknieë. In MySQL ek het geen idee hoe om te stem die navrae deur eenvoudig op soek na die navraag plan of kyk na die statistieke. Die indeks tuning assistent in MSSQL neem die meeste van die raai werk van watter indekse ontbreek of misplaas.

Een tekortkoming van MySQL is daar geen maksimum grootte vir 'n databasis. Die databasis sal net groter word totdat dit vul die skyf. Stel jou voor dat hierdie skyf is die deel van databasisse met ander gebruikers en skielik al hul navrae faal omdat hulle databasisse nie kan groei. Ek het hierdie kwessie te MySQL berig lang tyd gelede. Ek dink nie dit nog is vasgestel.

'n geruime tyd besig met MySQL uit die MSSQL te MySQL sintaksis POV Ek het om myself beperk in wat ek kon doen besteding.

Daar is bizzare perke op die opdatering van 'n tafel terwyl dieselfde tafel refrencing tydens 'n update.

Verder werk van werk nie en laaste keer wat ek nagegaan het hulle ondersteun nie die Oracle saamsmelt in sintaksis nie. Dit was 'n show stopper vir my en ek het daar gestop dink ek sou nêrens kry met MySQL daarna.

Gelisensieer onder: CC-BY-SA met toeskrywing
Nie verbonde aan StackOverflow
scroll top