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/06/05 17:14] adminmysql [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: von admin