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/06/05 17:14]
admin
mysql [2013/06/05 09:01] (aktuell)
admin
Zeile 2: Zeile 2:
  
 [[http://​olex.openlogic.com/​wazi/​2011/​get-the-most-out-of-phpmyadmins-visual-query-designer/​|phpMyAdmin’s Visual Query Designer]] \\ [[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.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.webcheatsheet.com/​SQL/​mysql_backup_restore.php#​phpmyadmin|Backing Up and Restoring using phpMyAdmin]] \\
Zeile 51: Zeile 53:
   *[[A quick note on MySQL troubleshooting and MySQL replication recovery]]   *[[A quick note on MySQL troubleshooting and MySQL replication recovery]]
  
 +==== phpMyAdmin: Neue Datenbank anlegen ====
 ==1. Neue Datenbank anlegen== ==1. Neue Datenbank anlegen==
   *PhpMyAdmin > Home > Neue Datenbank anlegen > cms_poesi   *PhpMyAdmin > Home > Neue Datenbank anlegen > cms_poesi
- +== 2. Benutzer anlegen bzw. editieren==
-==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   *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
  
-==Suchen/​Ersetzen== +==== Suchen/​Ersetzen ====
-  *UPDATE tabelle SET feld REPLACE(feld,​ '​suchbegriff',​ '​ersetzender'​);​+
  
-==Tabelle kopieren== +  UPDATE tabelle SET feld REPLACE(feld,​ '​suchbegriff',​ '​ersetzender'​)
-  *CREATE TABLE tabelle1 SELECT * FROM tabelle+
  
-==Tabellenstruktur ​kopieren== +==== Tabelle ​kopieren ====
-  *CREATE TABLE tabelle1 SELECT * FROM tabelle WHERE 0+
  
-==Tabellen vergleichen== +  CREATE TABLE tabelle1 SELECT ​FROM tabelle
-  ​*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+
  
-==Datenbank sichern==+==== Tabellenstruktur kopieren ====
  
-  *Am Server das entsprechende Verzeichnis /​var/​lib/​mysql/​name kopieren +  ​CREATE TABLE tabelle1 SELECT ​FROM tabelle WHERE 0
-oder **(FUNKTIONIERT NICHT GUT!!!)**+
  
-  */​usr/​bin/​mysqldump -u <​Benutzername>​ -p<​Passwort>​ <​DBName>​ > dateiname.sql ​+==== Tabellen vergleichen ====
  
-oder statt "<​DBName>"​ "​--all-databases"​+  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
  
-wichtig: zwischen "​-p"​ und dem Passwort darf kein Leerzeichen stehen+==== Datenbank sichern ====
  
-==Datenbank rücksichern== +  mysqldump ​-u <​Benutzername>​ -p<​Passwort> <DBName> > dateiname.sql  (oder statt "<​DBName>"​ "​--all-databases"​ . Wichtig: zwischen "​-p"​ und dem Passwort darf kein Leerzeichen stehen
-mysql -p<​Paßwort> ​-u <​Benutzername> ​<DB-Name> < dateiname+
  
-==Datenbank ​löschen== +==== Datenbank ​rücksichern ====
-mysql -u root -popen23 -e "DROP DATABASE dbname" ​+
  
-==Tabelle leeren== +  ​mysql -p<​Paßwort>​ -u <​Benutzername>​ <DB-Name> < dateiname
-mysql -u root -p stundenplan ​-e "​TRUNCATE TABLE daten"+
  
-==Tabelle anzeigen== +==== Datenbank löschen ====
-mysql -u root -p stundenplan -e "​SELECT * FROM daten"+
  
-==Daten in Tabelle updaten - Dateiname=Tabellenname! - Tabelleninhalt wird ersetzt==+  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   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 ==+ 
 +==== Stundenplan importieren ​====
  
   *Zeichensatz konvertieren mit [[http://​peer.st/​dw/​doku.php?​id=iconv|iconv]]   *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.1307286871.txt.gz · Zuletzt geändert: 2011/06/05 17:14 von admin