Fork me on GitHub

La base de données MySql


Tout ce qui concerne le fonctionnement de votre site, que ce soit sa configuration ou les données saisies, est stocké dans la base de données MySql

Sauvegarde

Procédez réguliêrement (quotidiennement) á une sauvegarde de votre base de données et avant toute modification importante.
Pour cela utilisez un outil d'accès á votre base de données (phpmyadmin, mysqlfront, module eskuel, etc...) Dans phpMyAdmin, clic sur l'onglet exporter, et compléter comme dans l'écran ci-dessous pour obtenir un fichier texte de sauvegarde comportant la création des tables et des données associées.



Dans la partie exporter, si vous voulez seulement faire la sauvegarde d'un module par exemple ne cochez que les tables qui vous intéressent.
Dans la partie droite, en cochant structure, il sera généré le code nécessaire á la création des tables.
En dessous, l'option insertions complêtes permet de s'affranchir des nouveaux noms de champs qui auraient été créés en cas d'écart de version
La coche dans l'option transmettre sert á sauvegarder le contenu qui sera généra dans un fichier texte.
Si votre base est sur Internet et que sa taille est importante, il sera alors souhaitable de cochez l'option zippé.

Restauration

Cette opération consiste selon les cas á reconstituer une base de données entiêre, á créer seulement certaines tables et/ou á les réalimenter.

Pour une restauration complête, il faut que la base de données choisie ne comporte plus aucune des tables xoops.

Dans la partie droite, vous cliquer sur l'onglet Sql pour avoir l'écran ci-dessous :

En cliquant sur le bouton parcourir, vous allez pouvoir choisir votre fichier sql de sauvegarde. Il ne vous reste plus qu'á cliquer sur le bouton exécuter pour recréer et alimenter vos tables.

]Explications sur le contenu d'un fichier sql

Toutes les lignes débutant par le caractêre # sont des commentaires et non prises en compte

Citation :
# Table structure for table 'xoops_avatar'

]Création d'une table

Une création de table s'effectue par une commande create table comme ceci

Citation :
CREATE TABLE xoops_banner (
bid smallint(5) unsigned NOT NULL auto_increment,
cid tinyint(3) unsigned NOT NULL default '0',
imptotal mediumint(8) unsigned NOT NULL default '0',
impmade mediumint(8) unsigned NOT NULL default '0',
clicks mediumint(8) unsigned NOT NULL default '0',
imageurl varchar(255) NOT NULL default '',
clickurl varchar(255) NOT NULL default '',
date int(10) NOT NULL default '0',
htmlbanner tinyint(1) NOT NULL default '0',
htmlcode text NOT NULL,
PRIMARY KEY (bid),
KEY idxbannercid (cid),
KEY idxbannerbidcid (bid,cid)
) TYPE=MyISAM;

La premiere ligne indique le nom de la table á créer, dans les lignes suivantes ce sont les champs oùl'on précise pour chacun son nom, son type de données, sa longueur éventuellement en parenthêses puis divers paramêtres.

La ligne suivante PRIMARY KEY (bid), sert á préciser que le champ bid est une clé primaire, c'est á dire que le numéro qu'il contient est unique dans la table. Il sera donc impossible d'insérer un enregistrement avec un numéro déjá existant dans cette table pour ce champ.

htmlcode text NOT NULL, Cette déclaration de création de champ comporte la mention NOT NULL mais n'indique pas de valeur par défaut. Si vous tentez d'alimenter cette table sans donner de valeur á ce champ, MySql provoquera une erreur et refusera de valider l'ajout.

Alimentation d'une table

Citation :
#
# Dumping data for table 'xoops_banner'
#

INSERT INTO xoops_banner (bid, cid, imptotal, impmade, clicks, imageurl, clickurl, date, htmlbanner, htmlcode) VALUES("1", "1", "0", "1", "0", "http://www.xoops-doc.org/images/banners/xoops_banner.gif", "http://www.xoops.org/", "1008813250", "0", "");
INSERT INTO xoops_banner (bid, cid, imptotal, impmade, clicks, imageurl, clickurl, date, htmlbanner, htmlcode) VALUES("2", "1", "0", "1", "0", "http://www.xoops-doc.org/images/banners/xoops_banner_2.gif", "http://www.xoops.org/", "1008813250", "0", "");
INSERT INTO xoops_banner (bid, cid, imptotal, impmade, clicks, imageurl, clickurl, date, htmlbanner, htmlcode) VALUES("3", "1", "0", "1", "0", "http://www.xoops-doc.org/images/banners/banner.swf", "http://www.xoops.org/", "1008813250", "0", "");

Pour ajout un enregistrement dans une table on utilise une commande insert into nom_table(noms des champs) VALUES (valeurs des champs dans le même ordre que leurs déclaration avant le mot VALUES)
Les valeurs sont entourés de "" et la ligne se termine par un point-virgule.
Bien évidemment le nombre de valeurs doit être égale au nombre de champs.

1) Afficher les dates stockées sous un format integer pour qu'elles soient lisibles dans un format date

select createdfrom_unixtime(createdfrom x2_stories;

2) Modifier un champ date stocké sous un format integer

update tbl_test set date_int=unix_timestamp('2001-01-02'where id=2;
Licence, certains droits réservés
Partager Twitter Partagez cette article sur GG+
  Voir cet article en format PDF Imprimer cet article Envoyer cet article

Naviguer à travers les articles
Article précédent Back-up MySQL Utilisation de phpMyAdmin Article suivant
Propulsé avec XOOPS | Graphisme adapté par Tatane, Grosdunord, Montuy337513

42 Personne(s) en ligne (1 Personne(s) connectée(s) sur Documentations) | Utilisateur(s): 0 | Invité(s): 42 | Plus ...