/ Forside / Teknologi / Udvikling / SQL / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
SQL
#NavnPoint
pmbruun 1704
niller 962
fehaar 730
Interkril.. 701
ellebye 510
pawel 510
rpje 405
pete 350
gibson 320
10  smorch 260
MySQL eller PostgreSQL på Debian Linux
Fra : M@ds


Dato : 08-04-02 20:23

Hej

Jeg har lagt mærke til at alle de linux distributioner jeg har installeret
har haft PostgreSQL som default/anbefalet SQL server.

Men når jeg kigger mig om på nettet får jeg det indtryk at MySQL er den
dominerende SQL server til private linux servere.

Jeg er ved at sætte en privat server op til at hoste nogle af mine egne web
applikationer skrevet i php.
Jeg kan først som sidst indrømme at jeg har mest erfaring med Windows
platformen. Jeg har professionelt næsten kun brugt MS SQL Server.
Men hvilken database server vil I anbefale? PostgreSQL eller MySQL?
Jeg nyder følgende MS SQL server funktioner:
- Cross-database joins,
- Sub-queries,
- Update from,
- Insert from,
- Jobs,
- DTS,
- rollback/commit transactions,
- database diagrams,
- Binære felter (primært < 100KB)
Men findes de også på Linux i en database server som ikke koster penge*

Hvordan er de to tidligere nævnte database serveres håndtering af
stømafbrydelse og binære data felter?

PS. Findes der en linux/php ækvivalent til MS datashaping?

På forhånd tak for alle svar!

Venlig Hilsen
Mads

* Da det er kun til privat brug, så jeg vil ikke betale for det (udover med
min egen tid)



 
 
Jonas Koch Bentzen (08-04-2002)
Kommentar
Fra : Jonas Koch Bentzen


Dato : 08-04-02 23:33

M@ds skrev:
>
> Men hvilken database server vil I anbefale? PostgreSQL eller MySQL?
> Jeg nyder følgende MS SQL server funktioner:
> - Cross-database joins,
> - Sub-queries,
> - Update from,
> - Insert from,
> - Jobs,
> - DTS,
> - rollback/commit transactions,
> - database diagrams,
> - Binære felter (primært < 100KB)

I så fald er PostgreSQL nok løsningen for dig.

--
Jonas Koch Bentzen

PHP-databaseklasse til PostgreSQL og MySQL:
http://understroem.dk/fasdab/

Michael Rasmussen (08-04-2002)
Kommentar
Fra : Michael Rasmussen


Dato : 08-04-02 23:33

On Mon, 08 Apr 2002 21:23:15 +0200, M@ds wrote:

</snip> Jeg kan først som sidst indrømme at jeg har mest erfaring med Windows
> platformen. Jeg har professionelt næsten kun brugt MS SQL Server. Men
> hvilken database server vil I anbefale? PostgreSQL eller MySQL? Jeg
> nyder følgende MS SQL server funktioner:
> - Cross-database joins, -
Hvilken anvendelse har dette??? minus standard
> Sub-queries,
sub-queries findes ikke i mysql før version 4.0, men den er stadigvæk kun
en beta. findes i PostgreSQL
> - Update from,
findes i begge
> - Insert from,
findes i begge
> - Jobs,
Hvilken anvendelse har dette??? minus standard
> - DTS,
Hvilken anvendelse har dette??? minus standard
> - rollback/commit transactions,
findes i begge med følgende undtagelse: Mysql benytter som standard isam
og myisam filformatet, der ikke understøtter transaktioner, men nyeste
stabile release indeholder flere filformater, der understøtter
transaktioner. Hvor godt det virker, ved jeg ikke, men mener at vide, at
transaktionsstyringen kun fungerer på tabelniveau, hvilket vil nedsætte
performans voldsomt.
> - database diagrams,
Hvilken anvendelse har dette??? minus standard. tilbydes som
tredjepartsprodukt.
> - Binære felter (primært < 100KB)
findes i begge.
> Men findes de også på Linux i en database server som ikke koster penge*
>
> Hvordan er de to tidligere nævnte database serveres håndtering af
> stømafbrydelse og binære data felter?
Forhåbentligt håndteres dette ikke forskelligt fra andre datafelter
>
> PS. Findes der en linux/php ækvivalent til MS datashaping?
Kender ikke til produktet
>
> På forhånd tak for alle svar!
>
> Venlig Hilsen
> Mads
>
> * Da det er kun til privat brug, så jeg vil ikke betale for det (udover
> med min egen tid)

--
Hilsen/Sincerely
Michael Rasmussen

"C makes it easy to shoot yourself in the foot; C++ makes it harder,
but when you do, it blows away your whole leg." - Bjarne Stroustrup
-------------------------------------------------------------------
Fjern NOSPAM fra min adresse, for at sende mig en mail

Jens Gyldenkærne Cla~ (09-04-2002)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 09-04-02 12:44

Michael Rasmussen <mir@datanom.net> skrev:

>> Cross-database joins, -
> Hvilken anvendelse har dette???

Jeg benytter det f.eks. ved brugervalidering hvor alle brugere fra
system A også skal have adgang til system B (men de to systemer i
øvrigt er fuldstændig uafhængige).


> minus standard

Er standard SQL da det eneste saliggørende? Der er masser af gode
argumenter for at benytte standard SQL når det kan lade sig gøre -
men man skyder sig selv i foden hvis man kategorisk nægter at
anvende andet. Hvis en opgave kan løses væsentlig
lettere/enklere/hurtigere ved en produktspecifik feature, ville jeg
ikke tøve med at anvende den. Det er vel trods alt ikke mange gange
man har brug for at portere et færdigt system(?)


>> - Jobs,
> Hvilken anvendelse har dette???

I et MS-system er det IMO særdeles praktisk - alt vedr. backup,
vedligeholdelse og andet der bare skal køre med faste mellemrum er
enkelt at lave vha. jobs. I unix/linux kan det måske klares lige så
nemt med shell scripts - men det betyder da ikke at jobs ikke har
nogen anvendelsesmuligheder.

> minus standard

Ja, men praktisk.

>> - DTS,
> Hvilken anvendelse har dette???

Masser.

> minus standard

Men igen praktisk at have.

>> - database diagrams,
> Hvilken anvendelse har dette???

Jeg ved ikke hvordan du holder styr på dine databaser, men jeg
finder det særdeles praktisk at have diagrammuligheden til at
hjælpe med at opbygge og vedligeholde en fornuftig datastruktur.

> minus standard.

Tja.

> tilbydes som tredjepartsprodukt.

Så kan det altså godt bruges alligevel . Findes der også
gratisprodukter til det - og hvis ikke, hvor meget skal man så
betale for at få et funktionelt diagramværktøj.

--
Jens Gyldenkærne Clausen
MF (medlem af FIDUSO - www.fiduso.dk)

Michael Rasmussen (09-04-2002)
Kommentar
Fra : Michael Rasmussen


Dato : 09-04-02 14:54

On Tue, 09 Apr 2002 13:43:49 +0200, Jens Gyldenkærne Clausen wrote:

> Michael Rasmussen <mir@datanom.net> skrev:
>
>>> Cross-database joins, -
>> Hvilken anvendelse har dette???
>
> Jeg benytter det f.eks. ved brugervalidering hvor alle brugere fra
> system A også skal have adgang til system B (men de to systemer i øvrigt
> er fuldstændig uafhængige).
>
>
>> minus standard
>
> Er standard SQL da det eneste saliggørende? Der er masser af gode
> argumenter for at benytte standard SQL når det kan lade sig gøre - men
> man skyder sig selv i foden hvis man kategorisk nægter at anvende andet.
> Hvis en opgave kan løses væsentlig lettere/enklere/hurtigere ved en
> produktspecifik feature, ville jeg ikke tøve med at anvende den. Det er
> vel trods alt ikke mange gange man har brug for at portere et færdigt
> system(?)
Det har jeg ikke sagt, men det var blot en hentydning til, at da det ikke
var standard, kunne han ikke forvente, det hed det samme, eller
faciliteten var implementeret - en ikke standardfacilitet kan ikke
forventes at være installeret i alle RDBMS.
>
>
>>> - Jobs,
>> Hvilken anvendelse har dette???
>
> I et MS-system er det IMO særdeles praktisk - alt vedr. backup,
> vedligeholdelse og andet der bare skal køre med faste mellemrum er
> enkelt at lave vha. jobs. I unix/linux kan det måske klares lige så nemt
> med shell scripts - men det betyder da ikke at jobs ikke har nogen
> anvendelsesmuligheder.
>
>> minus standard
>
> Ja, men praktisk.
>
Se ovenstående kommentar. I Unix/Linux håndteres dette af cron.
>>> - DTS,
>> Hvilken anvendelse har dette???
>
> Masser.
>
>> minus standard
>
> Men igen praktisk at have.
>
Hvilken funktionalitet tilbyder DTS?
>>> - database diagrams,
>> Hvilken anvendelse har dette???
>
> Jeg ved ikke hvordan du holder styr på dine databaser, men jeg finder
> det særdeles praktisk at have diagrammuligheden til at hjælpe med at
> opbygge og vedligeholde en fornuftig datastruktur.
>
>> minus standard.
>
> Tja.
>
>> tilbydes som tredjepartsprodukt.
>
> Så kan det altså godt bruges alligevel . Findes der også
> gratisprodukter til det - og hvis ikke, hvor meget skal man så betale
> for at få et funktionelt diagramværktøj.
>
Der følger et forholdsvis simpelt tcl/tck baseret grafisk interface med.
Hedder pgaccess.
En webbaseret pendant til phpMyAdmin findes også, og hedder phpPgAdmin.

--
Hilsen/Sincerely
Michael Rasmussen

"C makes it easy to shoot yourself in the foot; C++ makes it harder,
but when you do, it blows away your whole leg." - Bjarne Stroustrup
-------------------------------------------------------------------
Fjern NOSPAM fra min adresse, for at sende mig en mail

Jens Gyldenkærne Cla~ (09-04-2002)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 09-04-02 15:38

Michael Rasmussen <mir@datanom.net> skrev:

> Det har jeg ikke sagt, men det var blot en hentydning til, at
> da det ikke var standard, kunne han ikke forvente, det hed det
> samme, eller faciliteten var implementeret - en ikke
> standardfacilitet kan ikke forventes at være installeret i
> alle RDBMS.

Helt enig - jeg læste blot dit indlæg som om du kategorisk var imod
ikke-standard SQL. Man kan selvfølgelig ikke kræve andet end
standardkompabilitet af et produkt, men når man skal finde/vælge et
nyt produkt - i dette tilfælde en database - er det vel meget
relevant at se efter noget der kan (ca.) det samme som det man er
vant til. Ikke-standard-funktioner vil formentlig meget tit være
implementeret forskelligt fra system til system - men mange (flere)
af databasesystemerne har vel alligevel sammenlignelige (ikke-
standard) features?

[jobs]
> Se ovenstående kommentar. I Unix/Linux håndteres dette af
> cron.

Svaret på dit spørgsmål ("hvilken anvendelse har jobs") er så: Jobs
i et MS-system svarer altså til cron under Unix/Linux. Hvis der
overhovedet eksisterer en Windowsparallel til cron er den næppe så
nem at benytte som SQL-jobs.

> Hvilken funktionalitet tilbyder DTS?

Det er ikke noget jeg er voldsomt godt inde i, men det kan bl.a.
benyttes til alle former for datakopiering - frem og tilbage mellem
SQL-server, allehånde andre databaseformater, tekst m.m.

> Der følger et forholdsvis simpelt tcl/tck baseret grafisk
> interface med. Hedder pgaccess.

> En webbaseret pendant til phpMyAdmin findes også, og hedder
> phpPgAdmin.

Fint. Diagrammulighederne i SQL-server (v. 2k) er IMO et virkelig
stærkt kort. Man kan oprette, ændre og slette elementer direkte, og
der er mange forskellige visningsmuligheder (f.eks. kan tabeller
vises alene med deres navn, med primærnøglenavn, med samtlige
felter, felter + felttyper, etc.)

--
Jens Gyldenkærne Clausen
MF (medlem af FIDUSO - www.fiduso.dk)

Thorbjørn Ravn Ander~ (09-04-2002)
Kommentar
Fra : Thorbjørn Ravn Ander~


Dato : 09-04-02 16:04

"Jens Gyldenkærne Clausen" <jc@dmf.dk> writes:

> Helt enig - jeg læste blot dit indlæg som om du kategorisk var imod
> ikke-standard SQL. Man kan selvfølgelig ikke kræve andet end
> standardkompabilitet af et produkt, men når man skal finde/vælge et
> nyt produkt - i dette tilfælde en database - er det vel meget
> relevant at se efter noget der kan (ca.) det samme som det man er
> vant til. Ikke-standard-funktioner vil formentlig meget tit være
> implementeret forskelligt fra system til system - men mange (flere)
> af databasesystemerne har vel alligevel sammenlignelige (ikke-
> standard) features?

Hvis du udtrykkeligt oensker MS-specifikkke faciliteter, faar du
svaert ved at finde andre databaser der kan det du forventer.

--
Thorbjørn Ravn Andersen
http://homepage.mac.com/ravn

Jens Gyldenkærne Cla~ (10-04-2002)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 10-04-02 09:17

thunderbear@bigfoot.com (Thorbjørn Ravn Andersen) skrev:

> Hvis du udtrykkeligt oensker MS-specifikkke faciliteter, faar
> du svaert ved at finde andre databaser der kan det du
> forventer.

Nu er det lidt bagvendt, i og med at det er M@ds der har skrevet
det oprindelige indlæg. Men jeg kan sagtens forestille mig engang
at stå i en tilsvarende situation - dvs. at skulle finde en Linux-
baseret database. Hvis man er vant til MS Sql-server, er det vel
ikke så mærkeligt at man vil kigge efter databasesystemer der kan
lidt af det samme. Jeg ville aldrig forvente at et freeware
databasesystem kunne levere de samme faciliteter som MS' ikke helt
billige udgave. Men jeg ville - præcis som M@ds - spørge her, for
at finde frem til det bedste alternativ.


--
Jens Gyldenkærne Clausen
MF (medlem af FIDUSO - www.fiduso.dk)

Thorbjørn Ravn Ander~ (10-04-2002)
Kommentar
Fra : Thorbjørn Ravn Ander~


Dato : 10-04-02 10:28

"Jens Gyldenkærne Clausen" <jc@dmf.dk> writes:

> billige udgave. Men jeg ville - præcis som M@ds - spørge her, for
> at finde frem til det bedste alternativ.

Min erfaring er at der findes ikke to databaser der goer tingene ens.
Man skal derfor goere sig selv klart paa et eller andet tidspunkt hvad
man oensker. Oensker man at bruge MS-SQL skal man ikke udvikle under
Linux og omvendt.

Det skader dog ikke at goere sig klart at man oensker MS-specifikke
ting, da fravalget af Linux saa bliver mindre smertefuldt.
--
Thorbjørn Ravn Andersen
http://homepage.mac.com/ravn

Jens Gyldenkærne Cla~ (10-04-2002)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 10-04-02 11:07

thunderbear@bigfoot.com (Thorbjørn Ravn Andersen) skrev:

> Oensker man at bruge MS-SQL skal man ikke udvikle under Linux
> og omvendt.

Naturligvis ikke til samme system. Men man kan stadig havne i den
situation at man skal udvikle til en anden platform end den man er
vant til.

> Det skader dog ikke at goere sig klart at man oensker
> MS-specifikke ting, da fravalget af Linux saa bliver mindre
> smertefuldt.

Nu var præmissen netop at det skulle være et linuxsystem, så
fravalget er ikke muligt. Der er da heller ikke tale om at nogen
ønsker sig "MS-specifikke ting" - man ønsker et system der på så
mange områder som muligt kan de ting man kender i forvejen. Det vil
ofte - vel næsten altid - være med en anderledes syntaks, men det
er immervæk noget hurtigere at lære syntaksforskelle end at skulle
finde helt nye måder at arbejde på.

--
Jens Gyldenkærne Clausen
MF (medlem af FIDUSO - www.fiduso.dk)

M@ds (09-04-2002)
Kommentar
Fra : M@ds


Dato : 09-04-02 15:59

"Michael Rasmussen" <mir@datanom.net> wrote in message
news:pan.2002.04.09.15.54.12.608921.1644@datanom.net...
> Det har jeg ikke sagt, men det var blot en hentydning til, at da det ikke
> var standard, kunne han ikke forvente, det hed det samme, eller
> faciliteten var implementeret - en ikke standardfacilitet kan ikke
> forventes at være installeret i alle RDBMS.
Nææ. Jeg forventer det ikke, men håber.... de funktioner jeg listede var
bare en ønskeliste.

>
> Hvilken funktionalitet tilbyder DTS?
>
En masse. På mit arbejde har vi f.eks. lavet en DTS pakker som tager data
fra vores SAP system, køre det gennem nogle transformationer/valideringer og
gemmer det til sidst i en håndfuld tabeller.
Det kunne dog godt laves som et eksternt program, DTS udviklingsmiljøet er
dog designet direkte til database udvikling, så det er i mange tilfælde lidt
nemre at overskue.

> Der følger et forholdsvis simpelt tcl/tck baseret grafisk interface med.
> Hedder pgaccess.
> En webbaseret pendant til phpMyAdmin findes også, og hedder phpPgAdmin.
>
Kanon, jeg må hellere få phpPgAdmin ind, hvis den også har fået diagram
funktioner. Brugte phpMyAdmin for nogle år siden, men da var det 'kun' tabel
oprettelse som var understøttet.

Hilsen
Mads



Thorbjørn Ravn Ander~ (09-04-2002)
Kommentar
Fra : Thorbjørn Ravn Ander~


Dato : 09-04-02 05:02

"M@ds" <mads@iname.com> writes:

> * Da det er kun til privat brug, så jeg vil ikke betale for det (udover med
> min egen tid)

Saa faar du det ogsaa derefter.

MySQL er god til hurtige opslag. Sidst jeg kiggede paa det,
understottede det ikke commit/rollback, men det skulle vaere kommet
til siden. Der er nogen maerkelige begraensninger, og deres
hovedprioritet har vaeret hastighed istedet for komplethed.

PostgreSQL er mere moden rent databaseteknisk, men er ikke helt saa
hurtig som MySQL. Jeg bruger den selv en del som Oracle-erstatning
paa en OS X maskine.

Herudover kan du hente Oracle 9i til udviklingsbrug uden problemer,
bare du ikke gaar i drift med det. Oracle kan garanteret alt det du
skal bruge.
--
Thorbjoern Ravn Andersen "...plus...Tubular Bells!"
http://bigfoot.com/~thunderbear

Flemming Froekjaer (11-04-2002)
Kommentar
Fra : Flemming Froekjaer


Dato : 11-04-02 21:13

M@ds wrote:

> platformen. Jeg har professionelt næsten kun brugt MS SQL Server.


Hvis du er vandt til MS SQL vil jeg anbefale PostgreSQL. Tingene goeres
ikke paa samme maade, men du kan faa nesten samme funktionalitet som du
har paa MS SQL.


> - Cross-database joins,


Jeg har faktisk ikke proevet det, siden jeg koerte MS SQL, og der
droppede vi det ogsaa.

> - Sub-queries,
> - Update from,
> - Insert from,


Alle de overstaaende er understoettet.

> - Jobs,


Heder cron, og skrives som shell scripts.

> - DTS,


Er ikke en del af databasen, men jeg bruger normalt Perl til samme.
Det er utroligt effektivt, men jeg ved at andre bruger java, og jeg kan
ikke sige at den ene er bedre end den anden. Der findes rigtigt mange
liberies til baegge til at hjaelpe med at konvertere formater mm.
Triggers kan naturligvis saettes op til at eksekvere disse saa data
importeres, eller eksporteres efter behov.


> - rollback/commit transactions,


Er understoettet.

> - database diagrams,


Dia kan bruges til at dokumentere databasen, og jeg har set perl scripts
til at baade lave diagramer af eksisterende databaser, og genere sql
scripts ud fra diagrammet. Jeg har ikke proevet nogen af dem.

> - Binære felter (primært < 100KB)

Er understoettet.

> Hvordan er de to tidligere nævnte database serveres håndtering af
> stømafbrydelse og binære data felter?

De handteres som almindelige felter.


> PS. Findes der en linux/php ækvivalent til MS datashaping?


Kender den ikke. Hvad er det?

> * Da det er kun til privat brug, så jeg vil ikke betale for det (udover med
> min egen tid)


Saa er PostgreSQL sikkert den rette, og det fis med at mySQL skulle
vaere saa forbandet hurtig holder ikke en meter hvis den bruges rigtigt.
Man skal naturligvis ikke oprette og nedlaegge forbindelsen til
databasen hele tiden. Det er en ting som mySQL er hurtig til, men baade
PostgreSQL og MS SQL er relativt laenge om.
Selve selects og update/inserts koere lige saa hurtigt, og hurtigere
under load. Laes at mySQL knaekker halsen, mens de 2 andre fortsaetter
uforandret.

\Flemming




M@ds (12-04-2002)
Kommentar
Fra : M@ds


Dato : 12-04-02 10:26

"Flemming Froekjaer" <flemming@froekjaer.org> wrote in message
news:3CB5EE47.4050203@froekjaer.org...
> > - database diagrams,
>
> Dia kan bruges til at dokumentere databasen, og jeg har set perl scripts
> til at baade lave diagramer af eksisterende databaser, og genere sql
> scripts ud fra diagrammet. Jeg har ikke proevet nogen af dem.
>
> > PS. Findes der en linux/php ækvivalent til MS datashaping?
>
> Kender den ikke. Hvad er det?
>
Det er en måde til at loope recordsets inden i recordsets.
Hvis man nu har 2 tabeller: OrdreHoved og OrdreLinier.
Så vil man normalt trække OrdreHoved ud og skrive leverings addresse etc. Og
dernæst tage fat i OrdreLinier og skrive alle ordre linierne. Med MS
datashaping fyre man én statement af, og får dernæst både OrdreHoved og
OrdreLinier tilbage i samme recordset (OrdreLinier ligger som et
sub-recordset).

Hilsen
Mads



Flemming Froekjaer (13-04-2002)
Kommentar
Fra : Flemming Froekjaer


Dato : 13-04-02 09:27

M@ds wrote:

> "Flemming Froekjaer" <flemming@froekjaer.org> wrote in message
> news:3CB5EE47.4050203@froekjaer.org...
>
>>>PS. Findes der en linux/php ækvivalent til MS datashaping?
>>>
>>Kender den ikke. Hvad er det?
>>
>>
> Det er en måde til at loope recordsets inden i recordsets.
> Hvis man nu har 2 tabeller: OrdreHoved og OrdreLinier.
> Så vil man normalt trække OrdreHoved ud og skrive leverings addresse etc. Og
> dernæst tage fat i OrdreLinier og skrive alle ordre linierne. Med MS
> datashaping fyre man én statement af, og får dernæst både OrdreHoved og
> OrdreLinier tilbage i samme recordset (OrdreLinier ligger som et
> sub-recordset).
>

Det bliver da et meget grimt recordset du faar tilbage.
Jeg kender ikke til saadan en funktionalitet, men du har muligheden for
at skrive funktioner i PostgreSQL. Saa kan du selv lave funktionaliteten
i Perl eller lignede.

\Flemming


Søg
Reklame
Statistik
Spørgsmål : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408926
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste