I morgon ska jag spendera hela dagen till att sätta mig in i fördelar och nackdelar med olika databaser. Det vi (jag) ska göra är att välja ut en databashanterare som vi sedan kan hålla oss till, även på sikt. MSDE kan inte kunden själv administrera då Det är förstås väldigt svårt att avgöra utifrån de få ledtrådar du ger om behov och så, men följande kan jag väl iaf säga: > Personligen ser jag inte heller mySql som ett alternativ, det finns andra helt eller delvis gratis databashanterare som jag hellre skulle rekommendera, framförallt av den enkla anledningen att de är riktiga RDBMS. miniSql (numera mSql tror jag, och dessutom inte heller gratis längre), ThinkSQL, PostGreSQL, SAP är några exempel. En personlig favorit är Ocelot's DBMS, som följer hela standarden: http://www.ocelot.ca/download.htm Ville bara tacka för svaren. Som sagt, MySQL är inte en relationsdatabas i mina ögon, utan snarare en väldigt avancerad filhanterare som liknar en relationsdatabas. Dock inte sagt att den inte är bra, den är riktigt bra i vissa situationer. MySQL vs PostgreSQL är ungefär en lika het debatt som Linux vs Windows eller något annat religionskrig. Detta beror på att PostgrSQL-folket hellre pratar om viktiga databasfunktioner, medan MySQL hellre inriktar sig på ren prestanda. Tyvärr har jag inte testat PostgreSQL så mycket att jag kan säga något om prestanda, skalbarhet och stabilitet, men jag tror nog den klarar de flesta fall vi kan tänkas stöta på. PostgreSQL är mycket stabil och rätt så snabb (inte lika snabb som MySQL eller SQL-Server dock), det som talar för PostgreSQL är att den är grymt driftsäker även under hård last samt att den inte saknar möjligheten att göra subqueries och nästlade frågor. Jo jag tittade en del på SAP också och att den fanns för flera plattformar var ett stort pluss... Men jag läste i den del diskussionsgrupper där man tyckte att SAP hade en hög inlärningströskel och att det tog ovanligt lång tid att göra lösningar i den i jämförelse med PostgreSQL. Nu är ju detta subjektivt och kanske inte alls rätt vad jag vet. Du skrev "Min personliga uppfattning är att MySQL har en lång väg att gå innan den seriöst kan konkurrera med databashanterare avsedda för medelstora och stora databaser (PostgreSQL, MS SQL Server m.fl.). Men det är ju min uppfattning som newbie i ämnet :)". Jo visst gör den det, men fortfarande stöder den inte grundläggande funktioner i en relationsdatabas. Prestandamässigt är den utmärkt (i många situationer, men naturligtvis inte alla), men om man har behov av en relationsdatabas så bör man välja något annat, imho. Skulle gärna se att du utvecklar det resonemanget lite. Jat tycker det går utmärkt att skapa relationsdatabaser med mysql. Har personligen utvecklat en mängd olika databas applikationer med mysql och har aldrig stött på problem. Då har du tyvärr inte full koll på begreppet relationsdatabaser. Visst går det att utveckla databasapplikationer med det, inga problem. Men gör en foreign key i din databas så ska vi se hur bra det blir. Jag skulle nog vilja ge MSDE lite mer credit än så. Begränsningen (strypningen) i MSDE består av att den klarar fem samtidiga förfrågningar, dvs fem samtidiga SP:s, SQL-frågor o s v. Övriga frågor köas tills någon av dessa fem frågor är klara. Detta är inte en speciellt allvarlig begränsing, eftersom fler samtidiga frågor slöar ned exekveringen antagligen i motsvarande grad. Det finns ingen begränsing i antalet connections/användare i övrigt. Det ska till rätt många användare för att man ska nå upp till fem samtidiga frågor, givetvis beroende på vilken typ av program det är (hur databasintensivt det är)... Tycker absolut inte det är en större nackdel med avsaknaden av administratörsverktyg. Har man exempelvis tillgång till Enterprise Manager, Query Analyzer och de övriga verktygen så fungerar de även mot MSDE. Stötte på en kort men intressant artikel om MSDE som ger en snabb överblick på begränsningarna: Microsoft har själva ett verktyg kallat Webdataadmin vilket också är en ASP.NET applikation som fungerar hyfsat bra. ASP.NET Enterprise Manager såg ju dock ganska bra ut ja. Hej. Administrera kan man väl inte? Eller? Jag kan egentligen i princip inget om Access, men vad jag vet så man kan väl inte använda Access som ett 'substitut' för t ex Enterprise Manager? Visst, köra frågor och komma åt tabeller och så kan man, men inte administrera i form av sätta upp backupplaner, replikering, skapa användare etc. Eller? Hej Christoffer... Håkan, hur blev det egentligen här i slutänden? Har ni gjort något strategiskt val av databashanterare för framtiden?Val av databashanterare på sikt, erfarenheter?
Användningsområdet kommer vara back-end till ASP-baserade webbsajter och vi vill gärna se att kunden själv kan gå in och administrera sin databas. Utan att studerat alltför djupt i ämnet plockade vi ut mySQL (i Unix/Linux), MSDE (Win2000) och ev. även MS SQL-Server 2000 (Win2000).
Det jag vill fråga er är om ni har några tankar/åsikter kring detta? Framför allt om det är speciella problem/fördelar med de olika databaserna som ni har stött på utifrån erfarenheter?
Det skulle vara intressant att få lite kommentarer från er experter som jobbat mer med detta än lilla jag :)Sv: Val av databashanterare på sikt, erfarenheter?
där inte ingår något verktyg för databashantering.
Den är gratis bland annat utav den anledningen.
MSDE är SQL2000 utan administrationsverktyg.
Men det finns databasverktyg att söka efter på internet
som kunden kan använda för att administrera MSDE.
//JennySv: Val av databashanterare på sikt, erfarenheter?
> Användningsområdet kommer vara back-end till ASP-baserade webbsajter och vi vill gärna se att kunden själv kan gå in och administrera sin databas. Utan att studerat alltför djupt i ämnet plockade vi ut mySQL (i Unix/Linux), MSDE (Win2000) och ev. även MS SQL-Server 2000 (Win2000).
Detta gör ju att MSDE som jag ser det är helt utesluten. Dels så är den inte så enkel att administrera som SQL Server (eftersom det inte finns några adminverktyg till den utan man får köpa in/bygga själv vad man vill underhålla den med. Dels så är den strypt till att inte klara särskilt hög last och lämpar sig därför bäst som en enanvändardatabas (mer eller mindre) vilken körs, som namnet antyder, lokalt på användarens dator (Desktop Engine).
Om databashanteraren ska användas till ASP-sidor så implicerar det att man kommer att ha Windows-servers i nätverket, och då ser jag inte hur man kan välja en databashanterare för Linux/Unix (mySql går ju dock att köra på Windows, men jag ville bara påpeka OS-tankarna). Personligen ser jag inte heller mySql som ett alternativ, det finns andra helt eller delvis gratis databashanterare som jag hellre skulle rekommendera, framförallt av den enkla anledningen att de är riktiga RDBMS.
Men på de premisser du angivit ser jag ingen anledning att inte välja SQL Server (av de alternativ du ger), men om det är så att pris är viktigt så får man kanske fundera. Dock tycker jag inte att SQL Server är dyrt, och om man dessutom tittar på totala kostnader i form av administration, utvecklingskostnader, och kanske framförallt kostnader som kan uppstå pga integritetsproblem i datan (t ex beroende på att databashanteraren inte stöder främmande nycklar korrekt och man därmed kan få fel i datan) så är det kanske det billigare alternativet? En annan faktor kan hittas i att du skriver att ni ska hålla er till den DBMS ni väljer även på sikt. Det innebär att ni får titta på tillverkarnas stabilitet, möjligheter att komma med förbättringar etc. Jag tror nog att vi kommer att få se SQL Server fortsätta växa (i både funktionalitet och marknadsandelar) långt framöver.
Men, som alltid är frågan om vilken DBMS man ska använda mer eller mindre omöjlig att svara på. Det finns så många faktorer som påverkar. Vad vill folk betala? Vad har de för miljö idag? Vad har utvecklarna för kunskaper? Vad har de som ska ta över ett system för kunskaper? Finns det någon form av DBA som kan ta hand om databaserna, eller måste man se till att de är så självadministrerande som möjligt? Jag ser normalt sett inte nån definitiv anledning att välja en viss databashanterare, utan kör en ni känner er förtrogna med, som ni har god kunskap om.Sv: Val av databashanterare på sikt, erfarenheter?
Vilka databashanterare är det du tänker på då?Sv: Val av databashanterare på sikt, erfarenheter?
Tack!
Vad kom jag då fram till? Mja... hehe Det var inte lätt detta, framför allt inte med tanke på det något abstrakta användningsområdet jag fick uppmålat framför mig. Men jag skrev ett PM vilken tar upp alternativen MySQL, MS SQL Server 2000 samt PostgreSQL. Men jag har inte lyckats spika ned en specifik databashanterare p.g.a. tidigare nämnda omständigheter.
Fick däremot upp ögonen för PostgreSQL och läste en hel del i deras e-post listor om och hur de skulle göra en Windows port av databasen. Vad jag fick fram är att många (även Unix människor) är intresserade av att få fram en "native Win32" variant vilket jag ser som oerhört possitivt. De hade dock fortfarande mycket att reda upp och ingenting var säkert än så det är bara att hoppas.
Lärde mig också lite om MySQL. Det kanske viktigaste var att MySQL saknar en hel del saker vilka jag som MS SQL Server (och även Access!) användare tog för givet så som nästlade SELECTS. Min personliga uppfattning är att MySQL har en lång väg att gå innan den seriöst kan konkurrera med databashanterare avsedda för medelstora och stora databaser (PostgreSQL, MS SQL Server m.fl.). Men det är ju min uppfattning som newbie i ämnet :)Sv: Tack!
Har du tittat alls på SAP?Sv: Tack!
Sv: Tack!
Men jag tankade i alla fall hem och installerade den. Tog också hem webbdelen samt de två grafiska verktygen. Jag vet inte om jag har en dummstrut på huvudet men jag lyckades banne mig inte ens ansluta mot databasen (usr/lösen?). Läste installationsanvisningarna noga men det ville ändå inte.
Så med den korta tiden jag hade på mig gick jag vidare även om den var väldigt intressant.Sv: Tack!
Kan bara upplysa dig om att MySQL används av företag med väldigt stora databaser, lastkrav mm. Den används t ex av Yahoo! och NASA...
Så nog tycker jag att du kan ge den en chans...lycka till!
/KlasSv: Tack!
Sv: Tack!
PhilipSv: Tack!
Andra viktiga funktioner som ej stöds (åtminstone inte fullt ut) av MySQL men finns i de flesta RDBMS är transaktioner (ja, jag vet, InnoDB och BDB tabeller har funnits och stött transaktioner länge, men de stöds inte 'natively' av MySQL), låsning på radnivå, subselects, vyer, collations, unicode-stöd mm.Sv: Val av databashanterare på sikt, erfarenheter?
Avsaknaden av administratörsverktyg tycker jag personligen är en större nackdel...
/Per HultqvistSv: Val av databashanterare på sikt, erfarenheter?
Andra 'strypningar' är max 2GB stor databas. Men visst, jag säger absolut inte att man inte kan använda den, och den duger säkert i de flesta fall som denna diskussionen startade med, men man ville dock välja en databashanterare att använda på lång sikt, och då tycker jag inte det känns helt rätt. Men man ska definitivt vara medveten om att man inte låser in sig om man väljer MSDE, det är det som är det riktigt fina med den, databaser man kör i MSDE kan köras i SQL Server utan några som helst förändringar. Bara att flytta till en 'riktig' SQL Server när man behöver det.MSDE
http://www.fawcette.com/dotnetmag/2001_12/online/online_eprods/sql_rjennings12_4/default_pf.asp
Jag ser den stora nackdelen med MSDE att det saknas grafiska administrativa verkyg a'la Enterprise Manager (EP). Men jag hittade ett mycket intressant projekt där man håller på och försöker skriva en ASP.Net baserad variant av EP. Denna håller jag just nu på och utvärderar och jag kan konstatera att det saknas en hel del. Men med tanke på att det är ganska nytt så ser det mycket lovande ut. http://www.aspenterprisemanager.com/Sv: MSDE
Sv: MSDE
Vet inte om detta nämnts....
Det finns ju också en liten möjlighet att administrera SQL-Server/MSDE via Access 2000.
Segt, men det går...
//freddaSv: MSDE
Sv: MSDE
Nej, det kan man nog inte... har bara testat det några gånger...
Administrera var nog fel ord.
Tror bara man skapa och ändra olika objekt som finns.
Men det kanske räcker i många fall...
//freddaSv: Val av databashanterare på sikt, erfarenheter?