sql >> Databasteknik >  >> RDS >> Database

Del 1 – Hur man installerar SuiteCRM och omvänder dess databas

Customer Relationship Management-applikationer (CRM) har funnits under en tid. Vi skulle kunna diskutera mycket om deras fördelar och nackdelar när vi jämför dem med varandra. I den här serien tar vi en titt på databasen bakom ett populärt CRM med öppen källkod:SuiteCRM. Vi kommer också att visa hur man installerar allt vi behöver. I kommande artiklar kommer vi att organisera datamodellen och se hur den reagerar på ändringar som görs i användargränssnittet.

SuiteCRM:ett CRM med öppen källkod

Ett CRM är ett system som hjälper till att hantera relationer med kunder. CRM används för att automatisera försäljning, marknadsföring, support och samarbetsaktiviteter; de kan också användas för att analysera data. Vi kan använda tidigare lagrad data (klientdata, försäljningshistorik) och kontakter (samtal, e-postmeddelanden, meddelanden och chattar) för att definiera vår målgrupp och hitta rätt sätt att presentera våra produkter och tjänster för dem. Förutom operativa och analytiska CRM:er används ibland CRM:er för samarbete. De kan fungera som en kommunikationsplattform mellan vårt företag och våra leverantörer och distributörer.

SuiteCRM är open source-versionen av SugarCRM. Båda är moderna CRM:er som ger sätt att avsevärt förbättra vår verksamhet. Vi går nu igenom installationsprocessen för SuiteCRM och importerar sedan CRM-databasen till Vertabelo för att se vad som finns inuti.

Hur installerar du SuiteCRM lokalt

Du kan hitta allt du behöver på SuiteCRM-webbplatsen. Men jag bestämde mig för att gå med Bitnami SuiteCRM-versionen eftersom den är användarvänlig och lättare att installera. Personligen skulle jag rekommendera Bitnamis webbplats för många andra paket med öppen källkod.

Installationsprocessen är mycket enkel. Bitnami-paketet kommer att installera allt som behövs för att stödja SuiteCRM, inklusive dess MySQL- och phpMyAdmin-instanser. Det enda manuella jobbet är att välja en annan port för MySQL. (Naturligtvis behövs det bara om du redan har MySQL installerat lokalt.) Du måste också välja ett användarnamn och lösenord för att komma åt GUI och phpMyAdmin.

Vad är nästa steg?

Efter en lyckad installation kan du komma åt SuiteCRM via http://localhost/suitecrm URL. Om allt gick okej ser du något i stil med formuläret nedan:

Ange användarnamnet och lösenordet du valde under installationsprocessen. Efter inloggning kommer du att se administrationsskärmen för SuiteCRM, som ser ut så här:

Vi kan redan se "Försäljning", "Marknadsföring", "Support", "Aktiviteter" och "Samarbete" på menyn. Så vi har verkligen CRM installerat!

Detta är användardelen; vi återkommer till det senare. Just nu ska vi ta en titt på databasen. Först och främst loggar vi in ​​på phpMyAdmin-instansen som installerades med SuiteCRM. Vi kan komma åt det på http://127.0.0.1/phpmyadmin/. Skriv in "root" vid användarnamnsprompten och ange samma lösenord som du valde tidigare.

Vi exporterar hela databasen som ett SQL-skript med phpMyAdmin Export alternativ.

Nästa steg är att använda Vertabelo för att importera vår modell och ta en bättre titt på den. När vi klickar på Skapa ny modell i Vertabelo omdirigeras vi till en skärm som den nedan.

Vi matar in modellnamnet och väljer databasmotorn (MySQL). Efter det använder vi Välj fil knappen i avsnittet "Från SQL" för att välja filen med SQL-skriptet från disken. Klicka på Importera SQL och om allt gick bra kommer vi att se "Modellen importerades framgångsrikt. ”:

Klicka på STARTA MODELLERING för att börja modellera i Vertabelo.

Den importerade databasmodellen

Nu är vi in ​​i Vertabelo-modellens strukturskärm. Vi kan ta en snabb titt på modellen:

Det första du förmodligen kommer att lägga märke till är de fem (!) varningarna. De orsakas alla av samma problem:den saknade primärnyckeln i 5 tabeller – address_book , config , custom_fields , email_cache och users_feeds tabeller. Dessa saknade nycklar kommer inte att orsaka några problem i Vertabelo och vi kan fortsätta vårt arbete som vanligt. Som i andra system är varningar inte fel, utan de används för att peka ut något som kan vara ett logiskt fel eller en inkonsekvens.




En annan självklar sak är att vi har 201 bord i vår modell. Än så länge är de bara placerade runt på skärmen. I nästa omgång kommer vi att omorganisera bordslayouten för att göra vår Vertabelo-modell mer användarvänlig.

Observera att denna modell saknar referenser. Anledningen är att SuiteCRM använder MyISAM-lagringsmotorn, som inte stöder främmande nycklar. Relationer definieras på applikationsnivå i vardefs.php fil.

Nästa:Ordna om vår modell

Vertabelo erbjuder tre sätt att organisera vår modell:

  1. Efter ämnesområden
  2. Efter tabell- och vygenvägar
  3. Med referensgenvägar

Detaljer presenteras i denna YouTube-video. I nästa artikel kommer vi att använda dessa tips för att organisera vår modell i några funktionella områden.

CRM är komplexa och de måste täcka många olika syften. Det är huvudorsaken till att SuiteCRM-databasen har mer än 200 tabeller. MyISAM används som en lagringsmotor eftersom den ger bättre prestanda. Författarna valde att tappa de främmande nyckelbegränsningarna och göra denna prestation möjlig. Nästa gång kommer vi att utforska några fler Vertabelo-funktioner som är utformade för att hantera modeller av denna storlek.


  1. Java - Hur anropar man en orakelprocedur med anpassade typer?

  2. Slinga på bord med PL/pgSQL i Postgres 9.0+

  3. Använder JShell i Java 9 i NetBeans 9.0, del 3

  4. Hur väljer man från två tabeller i MySQL även om inte alla rader i en tabell har korrespondenter i den andra?