MySQL - PowerPoint PPT Presentation

About This Presentation
Title:

MySQL

Description:

Title: MySQL Author: FRED Last modified by: FRED Created Date: 11/7/2000 5:33:45 PM Document presentation format: Affichage l' cran Company *** Other titles – PowerPoint PPT presentation

Number of Views:159
Avg rating:3.0/5.0
Slides: 30
Provided by: fred274
Category:
Tags: mysql | jdbc

less

Transcript and Presenter's Notes

Title: MySQL


1
MySQL
  • I / Présentation.
  • II / Administration et Outils.
  • III / Mysql et le langage C.
  • IV / Mysql et le langage C.
  • V / Mysql et Java.
  • VI / Benchmarks
  • VII / Références

2
I / Présentation de Mysql
3
1) Historique
  • En 94, M. Widenius crée un nouveau serveur basé
    sur les caractéristiques de msql.
  • En 95, Tcx distribue MySQL sur Internet.
  • Version 3.11.1 diffusée dès 1996 (plusieurs
    plate-formes)
  • Aujourdhui Version 3.23.27

4
2) Caractéristiques ()
  • Vitesse.
  • Facilité dutilisation.
  • Coût.
  • Capacités.
  • Connexion et Sécurité.
  • Portabilité.
  • Distribution ouverte.

5
3) Caractéristiques (--)
  • Subselect.
  • Transanctions et commit / rollback.
  • Clés étrangères et intégrité référentielle.
  • Procédures stockées.
  • Déclencheurs.
  • Vues.

6
4) Installation
  • Récupérer les sources sur www.mysql.com
  • tar zxf mysql-version.tar.gz
  • ./configure - -prefix path 
  • make
  • make install
  • lancer le script mysql_install_db

7
5) Démarrage
  • lancer la commande safe_mysqld
  • Pour un démarrage automatique
  • Dans /etc/rc.d/init.d/ créer un lien symbolique
    mysql vers /usr/local/share/mysql.server
  • ln s /usr/local /share/mysql.server
    /etc/rc.d/init.d/mysql
  • Dans /etc/rc.d/rc3.d créer un lien symbolique
    S90mysql vers /etc/rc.d/init.d/mysql
  • ln s /etc/rc.d/init.d/mysql /etc/rc.d/rc3.d/S90my
    sql

8
II / Administration et Outils
9
(No Transcript)
10
(No Transcript)
11
(No Transcript)
12
2) Outils
  • mysql shell sql.
  • mysqladmin création, destruction de bases.
  • mysqldump sauvegarder une base.
  • mysqlimport importer un fichier de
    données.
  • mysqlshow infos sur les bases, les
    tables, les colonnes et les index.
  • isamchk maintenance et la réparation.

13
3) Exemples
14
III / Mysql et le langage C
15
1) API C et Structures
  • MYSQL pointeur sur une base
  • MYSQL_RES résultat dune requete
  • MYSQL_ROW ligne de données.
  • MYSQL_FIELD infos sur un champ
  • mysql_real_connect() mysql_close ()
    //Connexions
  • mysql_query () mysql_store_result ()
  • mysql_free_result() // Execution
  • mysql_fetch_row () // Récupération des résultats
  • mysql_field_seek ()
  • mysql_fetch_field ()

16
2) Exemple(1)
  • int main (int argc, char argv)
  • ..
  • MYSQL conn
  • conn mysql_init (NULL)
  • if(mysql_real_connect(conn,host_name,user_name,
  • password,db_name,port_num,socket_name,flags)
    NULL)
  • printf("mysql_real_connect() failed")
  • return -1
  • process_query (conn,argv1)
  • mysql_close (conn)
  • return 0

17
Exemple(2)
  • int process_query (MYSQL conn, char query)
  • MYSQL_RES res_set
  • if (mysql_query (conn, query) ! 0)
  • printf("process_query() failed")
  • return -1
  • res_set mysql_store_result (conn)
  • if (res_set ! NULL)
  • process_result_set (conn, res_set)
  • mysql_free_result (res_set)
  • return 0

18
Exemple(3)
  • void process_result_set (MYSQL conn, MYSQL_RES
    res_set)
  • MYSQL_ROW row
  • while ((row mysql_fetch_row (res_set)) !
    NULL)
  • mysql_field_seek (res_set, 0)
  • for (i 0 i lt mysql_num_fields (res_set)
    i)
  • field mysql_fetch_field (res_set)
  • printf (" s ",rowi)
  • printf("\n")

19
3) Compilation
  • Includes
  • -I/usr/include/mysql
  • Librairies
  • -L/usr/local/lib/mysql -lmysqlclient

20
IV / Mysql et le langage C
21
1) API C
  • Installer MySQL 1.7.6
  • Class Connection
  • Class Query
  • Class Result
  • Class Row

22
2) Exemple
  • int main(int argc,char argv)
  • Connection con("etudiant")
  • Query query con.query()
  • query ltlt argv1
  • Result res query.store()
  • Row row
  • Resultiterator i
  • for (i res.begin() i ! res.end() i)
  • row i
  • cout ltlt row0 ltlt " " ltlt row1 ltlt " "
    ltlt row2ltlt endl
  • return 0

23
3) Compilation
  • Includes
  • -I/usr/include/mysql
  • Librairies
  • -L/usr/lib/mysql -lsqlplus

24
V / Mysql et Java
25
1) API Java
  • Spécifiques à la base cible
  • Installer mm.mysql.jdbc-2.0pre5.tar.gz
  • Créer le CLASSPATH
  • Class Connection
  • Class Statement
  • Class ResultSet

26
2) JDBC
  • Java Database Connectivity
  • Communiquer avec les bases de données
  • Package java.sql
  • Appel package généralisé vers propriétaire
  • 4 types
  • Type 1 Passerelle JDBC - ODBC
  • Type 4 Pilotes 100 Java, plus performant.

27
3) Exemple
  • Class.forName("org.gjt.mm.mysql.Driver").newInstan
    ce()
  • Connection Conn DriverManager.getConnection("jdbc
    mysql//localhost/etudiant?userfredpasswordfre
    d")
  • Statement Stmt Conn.createStatement()
  • ResultSet RS Stmt.executeQuery(args0)
  • while (RS.next())
  • System.out.println(RS.getInt(1) " "
    RS.getString(2) " " RS.getString(3))
  • RS.close()
  • Stmt.close()
  • Conn.close()

28
VI / Benchmarks
  • Cest pas moi les fait !!!

29
VII / Références
  • www.mysql.com
  • API's
  • Clients
  • Outils Web
  • Outils dauthentification
  • ..
  • MySQL - Paul Dubois - CampusPress
Write a Comment
User Comments (0)
About PowerShow.com