Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 28/06/2007, à 13:02

Ricky3134

Tables pour mysql

Je voudrai savoir où sont stockées les tables sur le disque dur.

Hors ligne

#2 Le 28/06/2007, à 13:14

povtux

Re : Tables pour mysql

salut,

par defaut sous feisty, /var/lib/mysql

sinon, c'est dans le fichier /etc/my.cnf ou /etc/mysql/my.cnf selon les distribs à la rubrique datadir.

après, un sous dossier par DB, des fichiers pour les différentes tables (.frm pour les définitions de tables, .MYI pour les index MyIsam, .MYD pour les datas MyIsam)

si tu utilise des tables innoDB, dans ton datadir, un/des fichier(s) pour plusieurs tables en général nommés ibdata1, ibdata2.... à voir dans les paramètres innoDB de ton my.cnf

Hors ligne

#3 Le 28/06/2007, à 13:20

Ricky3134

Re : Tables pour mysql

Merci beaucoup.

Hors ligne

#4 Le 28/06/2007, à 13:26

Ricky3134

Re : Tables pour mysql

Je voudrai aussi savoir où se trouve les fichiers qui contiennent les noms d'utilisateurs avec leur mot de passe pour se connecter à mysql.

Hors ligne

#5 Le 28/06/2007, à 13:51

povtux

Re : Tables pour mysql

ils sont dans la base Mysql qui s'appelle mysql dans la table user en MyIsam.

attention, selon les versions de mysql, les champs contenus dans la table on évolués, pour une migration des utilisateurs d'une version à l'autre de MySQL, je préfère un dump de la table et une remontée du dump.

tu peux donc créer un utilisateur en insérant un enregistrement dans la table (sous phpMyAdmin par exemple) au lieu de passer par "GRANT". Mais attention, dans ce cas, pour que les changements (nvx user ou suppr de user) soient pris en compte, il faut faire un "flush privileges" ou dans phpMyAdmin, sur la page d'accueil "recharger mysql"

Hors ligne

#6 Le 28/06/2007, à 13:59

povtux

Re : Tables pour mysql

pour aller un peut plus loin sur les possibilités de gestion de droits sur Mysql, dans la base mysql, tu trouveras les tables suivantes:

user: les utilisateurs et leurs mots de passe ainsi que les droits généraux sur toutes les bases
db: les droits des utilisateurs sur 1 base précise
tables_priv: les droits des utilisateurs sur 1 table d'1 base précise
columns_priv: les droits des utilisateurs sur 1 colonne d'1 table d'1base précise
host: les droits des utilisateurs connectés depuis 1 machine précise pour 1 base précise

depuis les V4 et 5, quelques autres tables pour la gestion des procédures stockées, les droits d'accès à ces procédures, la gestion des timezone et d'autres que je connais moins bien.

Hors ligne

#7 Le 28/06/2007, à 14:23

Ricky3134

Re : Tables pour mysql

Ce que je veux faire c'est créer un utilisateur root ayant tous les droits (oui je n'ai plus d'utilisateur root hmm). Je veux qu'il soit le même que lorsque j'ai installé mysql, c'est possible ?

Hors ligne

#8 Le 28/06/2007, à 14:25

Ricky3134

Re : Tables pour mysql

Aussi comment faire pour ouvrir un fichier .frm ou .MYD ? et pour le modifier ?

Hors ligne

#9 Le 28/06/2007, à 15:00

povtux

Re : Tables pour mysql

Salut,

pour ton utilisateur root, dans ton billet 'plus de root' qqun t'as dit d'aller voir dans la doc (http://doc.ubuntu-fr.org/mysql) à la section
Comment redéfinir de force le mot de passe de root ?
en prenant la 2ème partie du paragraphe on peut faire ça comme ça:
sudo /etc/init.d/mysql stop
sudo mysqld --skip-grant-tables &
mysql -u root mysql
INSERT INTO user(...) VALUES ('root', PASSWORD('mdp'), 'Y', 'Y'.....) (à la place de update)

puis quitter + relancer mysql proprement.

je te laisse adapter la requette à ta version de mysql.

pour ce qui est d'ouvrir et modifier des .frm .MYD .MYI rien de tel que mysql lui même étant donné que c'est du binaire compressé et traité à leur sauce...

Hors ligne