Benutzer-Werkzeuge

Webseiten-Werkzeuge


mysql

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
mysql [2011/01/15 18:59]
178.191.197.203
mysql [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: 2011/01/15 18:59 von 178.191.197.203