Benutzer-Werkzeuge

Webseiten-Werkzeuge


mysql

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
mysql [2011/01/15 18:59] 178.191.197.203mysql [2013/06/05 09:01] (aktuell) admin
Zeile 1: Zeile 1:
 ====== MySQL ====== ====== MySQL ======
  
-==== MS ACCESS to MySQL ====+[[http://olex.openlogic.com/wazi/2011/get-the-most-out-of-phpmyadmins-visual-query-designer/|phpMyAdmin’s Visual Query Designer]] \\ 
 +[[MySQL - ACCESS]] \\ 
 +[[ACCESS - MySQL]] \\ 
 +[[http://www.bullzip.com/products/a2m/info.php|MS ACCESS to MySQL]] \\ 
 +[[http://www.webcheatsheet.com/SQL/mysql_backup_restore.php#phpmyadmin|Backing Up and Restoring using phpMyAdmin]] \\
  
-  *http://www.bullzip.com/products/a2m/info.php+==== root Passwort von MySQL vergessen ====
  
-==== Backing Up and Restoring using PHPMyAdmin ====+  *http://www.novell.com/communities/node/6055 
 +  *http://www.suseblog.com/reset-mysql-root-password-in-linux
  
-  *[[http://www.webcheatsheet.com/SQL/mysql_backup_restore.php#phpmyadmin|Backing Up and Restoring using PHPMyAdmin]]+  rcmysql stop
  
 +  mysqld_safe --skip-grant-tables
 +
 +  mysql --user=root mysql
 +
 +  update user set Password=PASSWORD('new-password') where user='root'; flush privileges; exit;
 +
 +  killall mysqld_safe
 +
 +  rcmysql start
 +
 +==== Joomla admin Passwort ändern ====
 +
 +  mysql -u root -pmyschool -e "UPDATE jos_users SET password=MD5('password') WHERE username='admin';"
 +
 +====MySQL Datenbank überprüfen ====
 +
 +  mysqlcheck --check [Datenbankname] -p   
 +
 +  mysqlcheck -A -p für alle
 +
 +====MySQL Datenbank versuchen zu reparieren ====
 +
 +  mysqlcheck --repair [Datenbankname.Tabellenname] -p   
 +
 +  mysqlcheck -A --repair -p (für alle!)
  
 ====Table is marked as crashed and should be repaired==== ====Table is marked as crashed and should be repaired====
   *[[http://www.webcheatsheet.com/SQL/mysql_backup_restore.php|Back Up and Restore a MySQL Database]]   *[[http://www.webcheatsheet.com/SQL/mysql_backup_restore.php|Back Up and Restore a MySQL Database]]
   *[[http://blog.emeidi.com/2007/09/mysql-table-is-marked-as-crashed-and.html|Table is marked as crashed and should be repaired]]   *[[http://blog.emeidi.com/2007/09/mysql-table-is-marked-as-crashed-and.html|Table is marked as crashed and should be repaired]]
 +  *[[http://linux.die.net/man/1/mysqlcheck|mysqlcheck]]
  
   *In das Datenbankverzeichnis einstein:/var/lib/mysql/avanger wechseln und folgenden Befehl ausführen   *In das Datenbankverzeichnis einstein:/var/lib/mysql/avanger wechseln und folgenden Befehl ausführen
-  *myisamchk -r mitglieder.MYI + 
-  *[[http://linux.die.net/man/1/mysqlcheck|mysqlcheck]] +  myisamchk -r mitglieder.MYI 
-  *mysqlcheck -A -r -p+ 
 +  mysqlcheck -A -r -p
  
   *[[A quick note on MySQL troubleshooting and MySQL replication recovery]]   *[[A quick note on MySQL troubleshooting and MySQL replication recovery]]
  
-==== root Passwort von MySQL vergessen ====+==== phpMyAdmin: Neue Datenbank anlegen ==== 
 +==1. Neue Datenbank anlegen== 
 +  *PhpMyAdmin > Home > Neue Datenbank anlegen > cms_poesi 
 +== 2. Benutzer anlegen bzw. editieren== 
 +  *Rechte > Neuen Benutzer hinzufügen > Benutzername > Kennwort > Datenbankspezifische Rechte > Rechte zu folgender Datenbank hinzufügen > Fenster öffen und Datenbank auswählen  > Datenbankspezifische Rechte > Alle auswählen > OK
  
-<file> +==== Suchen/Ersetzen ====
-First things first. Log in as root and stop the mysql daemon. Now lets start up the mysql daemon and skip the grant tables which store the passwords.+
  
-mysqld_safe –skip-grant-tables+  UPDATE tabelle SET feld = REPLACE(feld, 'suchbegriff', 'ersetzender')
  
-You should see mysqld start up successfully. If not, well you have bigger issues. Now you should be able to connect to mysql without a password.+==== Tabelle kopieren ====
  
-mysql –user=root mysql+  CREATE TABLE tabelle1 SELECT * FROM tabelle
  
-update user set Password=PASSWORD(’new-password’) where user=’root’; +==== Tabellenstruktur kopieren ====
-flush privileges; +
-exit;+
  
-Now kill your running mysqld, then restart it normally. You should be good to go. Try not to forget your password again. +  CREATE TABLE tabelle1 SELECT * FROM tabelle WHERE 0
-</file> +
-==== Joomla admin Passwort ändern ====+
  
-  mysql -u root -pmyschool -e "UPDATE jos_users SET password=MD5('password') WHERE username='admin';"+==== Tabellen vergleichen ====
  
-===MySQL Datenbank überprüfen ===+  select products.* from products LEFT JOIN products_to_categories ON products.products_id=products_to_categories.products_id where products_to_categories.products_id is NULL
  
-  mysqlcheck --check [Datenbankname] -p    +==== Datenbank sichern ====
-  mysqlcheck -A -p für alle+
  
-===MySQL Datenbank versuchen zu reparieren === +  mysqldump -u <Benutzername> -p<Passwort> <DBName> > dateiname.sql  (oder statt "<DBName>" "--all-databases" . Wichtig: zwischen "-p" und dem Passwort darf kein Leerzeichen stehen
-  mysqlcheck --repair [Datenbankname.Tabellenname] -p    +
-  mysqlcheck ---repair -p (für alle!)+
  
-===Diverse Fehler === +==== Datenbank rücksichern ====
-  *Table is marked as crashed and should be repaired +
-    *In das Datenbankverzeichnis einstein:/var/lib/mysql/avanger wechseln und folgenden Befehl ausführen +
-  myisamchk -r mitglieder.MYI+
  
-===Resetting MySQL Root Password=== +  mysql -p<Paßwort> -u <Benutzername> <DB-Name> < dateiname
-  *http://www.novell.com/communities/node/6055 +
-  *http://www.suseblog.com/reset-mysql-root-password-in-linux+
  
-=== Datenbank sichern und zurückschreiben ===+==== Datenbank löschen ====
  
-  *backup: mysqldump datenbankname > daten.sql -ubenutzername -p +  mysql -u root -popen23 -e "DROP DATABASE dbname" 
-  *restoremysqldump datenbankname < daten.sql -ubenutzername -p+ 
 +==== Tabelle leeren ==== 
 + 
 +  mysql -u root -p stundenplan -e "TRUNCATE TABLE daten" 
 + 
 +==== Tabelle anzeigen ==== 
 + 
 +  mysql -u root -p stundenplan -e "SELECT FROM daten
 + 
 +==== Daten in Tabelle updaten Dateiname=Tabellenname! - Tabelleninhalt wird ersetzt ==== 
 + 
 +  mysqlimport -u root -p --default-character-set=utf8 --fields-terminated-by="," --fields-optionally-enclosed-by="\"" --lines-terminated-by="\r\n" --local --delete stundenplan /root/daten.csv 
 + 
 +==== Stundenplan importieren ==== 
 + 
 +  *Zeichensatz konvertieren mit [[http://peer.st/dw/doku.php?id=iconv|iconv]] 
 + 
 +===== MySQL Commands ===== 
 + 
 +^ Description ^ Command ^ 
 +| To login (from unix shell) use -h only if needed. | [mysql dir]/bin/mysql -h hostname -u root -p | 
 +| Create a database on the sql server. | create database [databasename];
 +| List all databases on the sql server. | show databases; | 
 +| Switch to a database. | use [db name]; | 
 +| To see all the tables in the db. | show tables; | 
 +| To see database's field formats. | describe [table name]; | 
 +| To delete a db. | drop database [database name]; | 
 +| To delete a table. | drop table [table name]; | 
 +| Show all data in a table. | SELECT * FROM [table name]; | 
 +| Returns the columns and column information pertaining to the designated table. | show columns from [table name]; 
 +|  |  | 
 +| Show certain selected rows with the value "whatever". | SELECT * FROM [table name] WHERE [field name] = "whatever"; 
 +|  |  | 
 +| Show all records containing the name "Bob" AND the phone number '3444444'. | SELECT * FROM [table name] WHERE name = "Bob" AND phone_number = '3444444'; 
 +|  |  | 
 +| Show all records not containing the name "Bob" AND the phone number '3444444' order by the phone_number field. | SELECT * FROM [table name] WHERE name != "Bob" AND phone_number = '3444444' order by phone_number; 
 +|  |  | 
 +| Show all records starting with the letters 'bob' AND the phone number '3444444'. | SELECT * FROM [table name] WHERE name like "Bob%" AND phone_number = '3444444'; 
 +|  |  | 
 +| Use a regular expression to find records. Use "REGEXP BINARY" to force case-sensitivity. This finds any record beginning with a.  | SELECT * FROM [table name] WHERE rec RLIKE '^a$'; 
 +|  |  | 
 +| Show unique records. | SELECT DISTINCT [column name] FROM [table name]; | 
 +| Show selected records sorted in an ascending (asc) or descending (desc). | SELECT [col1],[col2] FROM [table name] ORDER BY [col2] DESC; | 
 +| Count rows. | SELECT COUNT(*) FROM [table name]; 
 +|  |  | 
 +| Join tables on common columns. | select lookup.illustrationid, lookup.personid,person.birthday from lookup |  
 +| | left join person on lookup.personid=person.personid=statement to join birthday in person table with primary illustration id; | 
 +| Switch to the mysql db. Create a new user.  | INSERT INTO [table name] (Host,User,Password) VALUES('%','user',PASSWORD('password'));
 +| Change a users password.(from unix shell). | [mysql dir]/bin/mysqladmin -u root -h hostname.blah.org -p password 'new-password'
 +| Change a users password.(from MySQL prompt). | SET PASSWORD FOR 'user'@'hostname' = PASSWORD('passwordhere');
 +| Switch to mysql db.Give user privilages for a db. | INSERT INTO [table name] (Host,Db,User,Select_priv,Insert_priv,Update_priv,Delete_priv,Create_priv,Drop_priv) VALUES ('%','db','user','Y','Y','Y','Y','Y','N');
 +| To update info already in a table. | UPDATE [table name] SET Select_priv = 'Y',Insert_priv = 'Y',Update_priv = 'Y' where [field name] = 'user';
 +| Delete a row(s) from a table. | DELETE from [table name] where [field name] = 'whatever';
 +| Update database permissions/privilages. | FLUSH PRIVILEGES; | 
 +| Delete a column. | alter table [table name] drop column [column name]; | 
 +| Add a new column to db. | alter table [table name] add column [new column name] varchar (20); | 
 +| Change column name. | alter table [table name] change [old column name] [new column name] varchar (50); | 
 +| Make a unique column so you get no dupes. | alter table [table name] add unique ([column name]); | 
 +| Make a column bigger. | alter table [table name] modify [column name] VARCHAR(3); | 
 +| Delete unique from table. | alter table [table name] drop index [colmn name]; | 
 +| Load a CSV file into a table. | LOAD DATA INFILE '/tmp/filename.csv' replace INTO TABLE [table name] FIELDS TERMINATED BY ',' LINES TERMINATED BY '\n' (field1,field2,field3);
 +| Dump all databases for backup. Backup file is sql commands to recreate all db's. | [mysql dir]/bin/mysqldump -u root -ppassword --opt >/tmp/alldatabases.sql | 
 +| Dump one database for backup. | [mysql dir]/bin/mysqldump -u username -ppassword --databases databasename >/tmp/databasename.sql | 
 +| Dump a table from a database. | [mysql dir]/bin/mysqldump -c -u username -ppassword databasename tablename > /tmp/databasename.tablename.sql | 
 +| Restore database (or database table) from backup. | [mysql dir]/bin/mysql -u username -ppassword databasename < /tmp/databasename.sql 
 +| Create Table Example 1. | CREATE TABLE [table name] (firstname VARCHAR(20), middleinitial VARCHAR(3), lastname VARCHAR(35),suffix VARCHAR(3), officeid VARCHAR(10),userid VARCHAR(15),username VARCHAR(8),email VARCHAR(35),phone VARCHAR(25), groups VARCHAR(15),datestamp DATE,timestamp time,pgpemail VARCHAR(255)); 
 +| Create Table Example 2. | create table [table name] (personid int(50) not null auto_increment primary key,firstname varchar(35),middlename varchar(50),lastname varchar(50) default 'bato'); 
 + 
 +===== Binary Log Files ===== 
 +<file /etc/my.cnf> 
 +... 
 +#log_bin                        = /var/log/mysql/mysql-bin.log 
 +#expire_logs_days        = 10 
 +#max_binlog_size         = 100M 
 +... 
 +</file>
  
 +  mysql -u root -p 'MyPassword' -e "PURGE BINARY LOGS TO 'mysql-bin.03';"
  
 +  mysql -u root -p 'MyPassword' -e "PURGE BINARY LOGS BEFORE '2008-12-15 10:06:06';"
  
mysql.1295114359.txt.gz · Zuletzt geändert: von 178.191.197.203