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
Letzte Überarbeitung Beide Seiten der Revision
mysql [2011/01/11 15:04]
193.170.221.5
mysql [2013/06/05 08:40]
admin [MySQL]
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]] \\ 
 +[[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 löschen ​==== 
 + 
 +  mysql -u root -popen23 -e "DROP DATABASE dbname"​ 
 + 
 +==== 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 -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.txt · Zuletzt geändert: 2013/06/05 09:01 von admin