Componenti dello stack LAMP - PHP, il linguaggio, l'installazione - MySQL, in...Fulvio Corno
Master: Amministratore Linux - Livello Avanzato
Nel contesto della formazione professionale rivolta ad aziende ed enti pubblici, sono stati preparati ed erogati dei corsi di Amministratore di sistemi Linux, al livello base ed al livello avanzato.
Il contenuto del corso è allineato con alcuni moduli della certificazione LPIC (Linux Professional Institute Certification), a cavallo tra i livelli 1 e 2. Tutto il materiale didattico è disponibile liberamente con licenza Creative Commons BY-NC-SA.
I docenti del corso sono i proff. Giovanni Squillero, Bartolomeo Montrucchio e Fulvio Corno.
Maggiori informazioni: http://elite.polito.it/index.php/teaching/current-courses/255-master-linux-admin
Componenti dello stack LAMP - PHP, il linguaggio, l'installazione - MySQL, in...Fulvio Corno
Master: Amministratore Linux - Livello Avanzato
Nel contesto della formazione professionale rivolta ad aziende ed enti pubblici, sono stati preparati ed erogati dei corsi di Amministratore di sistemi Linux, al livello base ed al livello avanzato.
Il contenuto del corso è allineato con alcuni moduli della certificazione LPIC (Linux Professional Institute Certification), a cavallo tra i livelli 1 e 2. Tutto il materiale didattico è disponibile liberamente con licenza Creative Commons BY-NC-SA.
I docenti del corso sono i proff. Giovanni Squillero, Bartolomeo Montrucchio e Fulvio Corno.
Maggiori informazioni: http://elite.polito.it/index.php/teaching/current-courses/255-master-linux-admin
Apache HTTP Server - Funzionalità - Configurazione - Virtual Host - SSL e httpsFulvio Corno
Master: Amministratore Linux - Livello Avanzato
Nel contesto della formazione professionale rivolta ad aziende ed enti pubblici, sono stati preparati ed erogati dei corsi di Amministratore di sistemi Linux, al livello base ed al livello avanzato.
Il contenuto del corso è allineato con alcuni moduli della certificazione LPIC (Linux Professional Institute Certification), a cavallo tra i livelli 1 e 2. Tutto il materiale didattico è disponibile liberamente con licenza Creative Commons BY-NC-SA.
I docenti del corso sono i proff. Giovanni Squillero, Bartolomeo Montrucchio e Fulvio Corno.
Maggiori informazioni: http://elite.polito.it/index.php/teaching/current-courses/255-master-linux-admin
Videocorso in italiano su Udemy!
https://www.udemy.com/corso-linux-per-sviluppatori-web-lamp-apache-php-mysql/?couponCode=SLIDES10
- Installare un server linux
- Lavorare con la linea di comando
- Gestione gruppi, utenti e permessi
- Bash scripting
- Espressioni regolari
- Apache, NGnix &Https
- Installare PHP & MySql
- Cron e crontab
Managing configuration in Drupal 8 - SIDCamp 2015Kelyon Srl
Il sistema di configuration management è una delle grandi novità di Drupal 8, gli use-cases di riferimento per l'utilizzo del sistema di configuration management in Drupal 8 sono differenti da quelli del sistema Drupal 7 + Features sia dal punto di vista di un site-builder che dal punto di vista dello sviluppo.
Il modulo Features in Drupal 8 ritornerà ad essere impiegato per il suo scopo originario.
Build a SQL Server machine - the right way (Italian)Danilo Dominici
L'installazione di SQL Server consente di preparare rapidamente un server, ma la configurazione di default non è ottimale. In questa sessione vediamo come preparare una macchina per SQL Server nel migliore dei modi, con un occhio alle performance e alla scalabilità.
Introduzione a Drupal e componenti del core - SIDCamp 2015Kelyon Srl
Vengono illustrate le parti principali del CMS Drupal con particolare attenzione alle componenti del core quali nodi, utenti, permessi, field, tassonomia. Viene mostrato anche l'approccio logico alla definizione delle strutture di dati in Drupal, al fine di fornire strumenti adeguati all'approccio alla costruzione di un sito in Drupal.
Apache HTTP Server - Funzionalità - Configurazione - Virtual Host - SSL e httpsFulvio Corno
Master: Amministratore Linux - Livello Avanzato
Nel contesto della formazione professionale rivolta ad aziende ed enti pubblici, sono stati preparati ed erogati dei corsi di Amministratore di sistemi Linux, al livello base ed al livello avanzato.
Il contenuto del corso è allineato con alcuni moduli della certificazione LPIC (Linux Professional Institute Certification), a cavallo tra i livelli 1 e 2. Tutto il materiale didattico è disponibile liberamente con licenza Creative Commons BY-NC-SA.
I docenti del corso sono i proff. Giovanni Squillero, Bartolomeo Montrucchio e Fulvio Corno.
Maggiori informazioni: http://elite.polito.it/index.php/teaching/current-courses/255-master-linux-admin
Videocorso in italiano su Udemy!
https://www.udemy.com/corso-linux-per-sviluppatori-web-lamp-apache-php-mysql/?couponCode=SLIDES10
- Installare un server linux
- Lavorare con la linea di comando
- Gestione gruppi, utenti e permessi
- Bash scripting
- Espressioni regolari
- Apache, NGnix &Https
- Installare PHP & MySql
- Cron e crontab
Managing configuration in Drupal 8 - SIDCamp 2015Kelyon Srl
Il sistema di configuration management è una delle grandi novità di Drupal 8, gli use-cases di riferimento per l'utilizzo del sistema di configuration management in Drupal 8 sono differenti da quelli del sistema Drupal 7 + Features sia dal punto di vista di un site-builder che dal punto di vista dello sviluppo.
Il modulo Features in Drupal 8 ritornerà ad essere impiegato per il suo scopo originario.
Build a SQL Server machine - the right way (Italian)Danilo Dominici
L'installazione di SQL Server consente di preparare rapidamente un server, ma la configurazione di default non è ottimale. In questa sessione vediamo come preparare una macchina per SQL Server nel migliore dei modi, con un occhio alle performance e alla scalabilità.
Introduzione a Drupal e componenti del core - SIDCamp 2015Kelyon Srl
Vengono illustrate le parti principali del CMS Drupal con particolare attenzione alle componenti del core quali nodi, utenti, permessi, field, tassonomia. Viene mostrato anche l'approccio logico alla definizione delle strutture di dati in Drupal, al fine di fornire strumenti adeguati all'approccio alla costruzione di un sito in Drupal.
MySQL Tech Tour 2015 - Progettare, installare e configurare MySQL ClusterPar-Tec S.p.A.
Il TechAdvisor Mirko Conte spiega come progettare, installare e configurare MySQL Cluster, la versione di punta del database open source più utilizzato al mondo.
Durante la presentazione, Mirko ha condiviso numerose informazioni teoriche e pratiche per comprendere dove, come e quando utilizzare al meglio MySQL Cluster. In questa sessione ha trattato i seguenti punti:
- Valutare MySQL Cluster nel proprio progetto
- Esempi di architettura
- Requisiti hardware/network
- Sessione hands-on
Per saperne di più, scaricate le slide e guardate il video della presentazione del nostro TechAdvisor su http://www.par-tec.it/progettare-installare-gestire-e-ottimizzare-mysql-cluster#progettare
Il motore di database MySQL, suo funzionamento e utilizzo. Le novita' introdotte dalla versione 5.
Talk tenuto da Alessandro Tanasi (http://www.tanasi.it)
Structured Streaming è il modulo di Stream Processing costruito sul motore Spark SQL. In poche parole garantisce l'esecuzione di un messaggio esattamente una volta, è scalabile e fault-tolerant. È possibile definire le analisi stream nello stesso modo in cui si definirebbe un calcolo batch sui dati usando i Dataset/DataFrame API in Scala, Java, Python or R utilizzando l'engine SQL di Spark.
Durante la sessione vedremo un'overview delle funzionalità e un esempio di di come sia possibile eseguire l'ingestion dei dati con Event Hub (Kafka enabled) eseguire un'analisi con Spark e salvare i risultati su Cosmos DB.
Cloud storage in azienda: perche` Riak ci e` piaciutoBioDec
La realizzazione di un software per l'automazione di un processo di
lavoro ha portato all'implementazione di un sistema di storage in
grado di gestire imponenti flussi di dati (raw data, immagini...).
Il core del sistema di archiviazione e` il database NoSql Riak. A
quasi un anno dall'entrata in produzione, tale configurazione si e`
confermata robusta e performante (vengono acquisiti in modo
ridondato centinaia di migliaia di files ogni mese, realizzando un
archivio permanente in costante crescita dell'ordine di terabytes).
Nel corso dell'intervento verranno mostrate le motivazioni che hanno
portato a questa scelta.
Oltre ad una rapida panoramica volta ad illustrare le funzionalita`
di Riak si intende condividere in modo pratico il know-how acquisito
ripercorrendo le problematiche riscontrate durante il setup, la
configurazione e la gestione di un cluster Riak (ambienti di
sviluppo e produzione, ottimizzazioni, deploy del cluster, backup,
disaster recovery, ...).
MySQL Day Roma 2022 - MySQL: dall'alta disponibilità al disaster recovery in ...Par-Tec S.p.A.
Al MySQL Day 2022 di Roma il System Architect Mirko Conte ha mostrato l’architettura InnoDB ClusterSet, il nuovo Disaster Recovery di MySQL.
Durante il workshop tecnico sono stati approfonditi i seguenti punti:
- Parliamo di High Availability
- HA e DR, come possiamo ottenerli su MySQL?
- Caratteristiche ed utilizzo di Innodb Clusterset
- Da Innodb Cluster a Clusterset - Installazione
- Gestione di Innodb Clusterset
Per saperne di più, scarica le slide e guarda il video completo della presentazione del nostro TechAdvisor su https://www.par-tec.it/mysql-dall-alta-disponibilita-al-disaster-recovery-in-pochi-passi
Similar to Laboratorio Di Basi Di Dati 03 Il D B M S Postgre S Q L (20)
Laboratorio Di Basi Di Dati 03 Il D B M S Postgre S Q L
1. Corso di Basi di Dati e Laboratorio
PostgreSQL
Alfio Ferrara - Stefano Montanelli
A.A. 2005/2006 Basi di Dati e Laboratorio 1
Introduzione
• PgSQL
– http://www.postgresql.org
– DBMS relazionale Open Source (licenza GPL)
– Applicazione Client – Server
– La distribuzione consiste in un server e una
applicazione client da riga di comando (pgsql)
– Disponibili diversi script di amministrazione
(initdb, pgdump, …)
A.A. 2005/2006 Basi di Dati e Laboratorio 2
Supporto allo standard
• Postgres supporta ampiamente lo standard
SQL99
• Complex queries, Foreign keys, Triggers, Views,
Transactional integrity, Multiversion concurrency
control
• Estensioni
• Data types
• Functions
• Operators
• Aggregate functions
• Index methods
• Procedural languages
A.A. 2005/2006 Basi di Dati e Laboratorio 3
1
2. Avvio del servizio
• Il servizio è avviato dall’istruzione:
– postmaster -D /path/cluster -i
Avvio del servizio Accetta connessioni non locali
Directory di memorizzazione fisica
• Il server può gestire più database e essere
associato a un cluster specifico
A.A. 2005/2006 Basi di Dati e Laboratorio 4
Inizializzare un cluster
• Creare una directory (/path/cluster) con su
cui l’utente amministratore (postgres) abbia
i permessi in lettura/scrittura
– initdb -D /path/cluster
• Si possono creare utenti e database senza
utilizzare il client psql
– createuser test / dropuser test
– createdb testdb / dropdb testdb
A.A. 2005/2006 Basi di Dati e Laboratorio 5
Stato iniziale
• Inizialmente sono presenti i database
template0 e template1
• Essi sono utilizzati come template per la
creazione di nuovi database
• È possibile creare un proprio template
come base per la generazione di nuovi
database
A.A. 2005/2006 Basi di Dati e Laboratorio 6
2
3. Uso del client psql
• psql template1[-h host -U utente]
– Se omesso viene assunto l’utente corrente e se
omesso il db si assume che il db abbia lo stesso nome
dell’utente
• I comandi sono distinti in due tipologie:
– Comandi del client: preceduti da
– Comandi SQL
• Help in linea
– ?[comando]: help sui comandi del client
– h[comando]: help su sql
• Altri comandi utili
– l lista dei db, d descrittore, dt elenco tabelle, etc.
A.A. 2005/2006 Basi di Dati e Laboratorio 7
SELECT
• Il comando SELECT oltre che per normali
query è utilizzato anche per attivare le
funzioni postgres
• Esempi:
– SELECT current_date;
– SELECT 2 + 4;
A.A. 2005/2006 Basi di Dati e Laboratorio 8
Creazione di utenti e db
CREATE USER name [ [ WITH ] option [ ... ] ]
SYSID uid
| CREATEDB | NOCREATEDB
| CREATEUSER | NOCREATEUSER
| IN GROUP groupname [, ...]
| [ ENCRYPTED | UNENCRYPTED ] PASSWORD 'password'
| VALID UNTIL 'abstime'
CREATE DATABASE name
[ [ WITH ] [ OWNER [=] dbowner ]
[ TEMPLATE [=] template ]
[ ENCODING [=] encoding ]
[ TABLESPACE [=] tablespace ] ]
A.A. 2005/2006 Basi di Dati e Laboratorio 9
3
4. Creazione di tabelle
• La creazione di tabelle è conforme allo
standard, ad eccezione dell’uso di tipi di
dato particolari o funzioni
• Un esempio di estensione dello standard è
costituito dalla capacità di tabelle PSQL di
ereditare da altre tabelle
A.A. 2005/2006 Basi di Dati e Laboratorio 10
Esempio di inheritance
Postgresql tutorial (www.postgresql.org)
CREATE TABLE cities (
name text,
population real,
altitude int
);
CREATE TABLE capitals (
state char(2)
) INHERITS (cities);
A.A. 2005/2006 Basi di Dati e Laboratorio 11
Array
• Postgres supporta anche un tipo di dato
array
• Permette l’uso di attributi multivalore e
pertanto è da evitare perché non produce
schemi normalizzati
A.A. 2005/2006 Basi di Dati e Laboratorio 12
4
5. Funzioni e estensioni
• Postgres implementa un numero molto
vasto di funzioni e tipi di dato complessi
• Ricordiamo:
– Gestione della concorrenza e transazioni
– Estensioni procedurali di SQL
– Gestione del partizionamento
A.A. 2005/2006 Basi di Dati e Laboratorio 13
Esempio: gestione di sequenze
CREATE [ TEMPORARY | TEMP ] SEQUENCE name [ INCREMENT [ BY ]
increment ]
[ MINVALUE minvalue | NO MINVALUE ] [ MAXVALUE maxvalue | NO
MAXVALUE ]
[ START [ WITH ] start ] [ CACHE cache ] [ [ NO ] CYCLE ]
• La sequenza viene poi manipolata con
– Nextval(sequenza)
– Currval(sequenza)
– Setval(sequenza,valore[,booleano*])
– * Determina se il nuovo valore influenza
nextval
A.A. 2005/2006 Basi di Dati e Laboratorio 14
Informazioni di catalogo e di sistema
• Il catalogo è strutturato secondo tre
schemi:
– Pg_catalog: database di sistema (utenti, etc.)
– Information_schema: contiene i metadati
– Public: schema di default dei nuovi db
• Esempi:
– SELECT * from pg_catalog.pg_user;
– SELECT * from information_schema.tables;
A.A. 2005/2006 Basi di Dati e Laboratorio 15
5
6. Controllo dell’accesso
• Il controllo dell’accesso si effettua per
mezzo del file
– pg_hba.conf
• Il file viene collocato nel cluster dallo script
initdb sulla base del default
• Modificando il file è possibile definire
diverse politiche di accesso con regole
analoghe a quelle dei firewall
A.A. 2005/2006 Basi di Dati e Laboratorio 16
Sintassi
local database user auth-method [auth-option]
host database user CIDR-address auth-method [auth-option]
hostssl database user CIDR-address auth-method [auth-option]
hostnossl database user CIDR-address auth-method [auth-option]
host database user IP-address IP-mask auth-method [auth-option]
hostssl database user IP-address IP-mask auth-method [auth-option]
hostnossl database user IP-address IP-mask auth-method [auth-option]
– Local: unix socket
– Host: TCP/IP
– SSL: uso di connessioni protette
– Auth-method: trust | reject | md5 | …
– Auth-option: opzioni dei diversi metodi
A.A. 2005/2006 Basi di Dati e Laboratorio 17
Esempi
#Tutti gli utenti su tutti i db
# TYPE DATABASE USER CIDR-ADDRESS METHOD
local all all trust
# Lo stesso per TCP/IP
# TYPE DATABASE USER CIDR-ADDRESS METHOD
host all all 127.0.0.1/32 trust
#Lo stesso ma specificando gli indirizzi via IP-MASK
# TYPE DATABASE USER IP-ADDRESS IP-MASK METHOD
host all all 127.0.0.1 255.255.255.255 trust
A.A. 2005/2006 Basi di Dati e Laboratorio 18
6
7. Esempi
# Consenti ad un utente da host 192.168.12.10 di connettersi al database
# quot;postgresquot; se l’utente fornisce la password corretta
# TYPE DATABASE USER CIDR-ADDRESS METHOD
host postgres all 192.168.12.10/32 md5
A.A. 2005/2006 Basi di Dati e Laboratorio 19
Dump e restore
• Copiare e salvare un database
– pg_dump [opzioni] nomedb > file
– pg_dumpall consente il dump delll’intero
cluster
• Le opzioni dello script consentono di determinare
se effettuare il dump del solo schema o anche dei
dati e di determinare l’utente
• Restore
– Psql nomedb < file
• Occorre creare il database vuoto e eventuali utenti
associati al db
A.A. 2005/2006 Basi di Dati e Laboratorio 20
Dump
• Il dump può essere diviso su più file
– pg_dump dbname | split -b 1m - filename
– cat filename* | psql dbname
• Oppure compresso
– pg_dump dbname | gzip > filename.gz
– cat filename.gz | gunzip | psql dbname
A.A. 2005/2006 Basi di Dati e Laboratorio 21
7