Crmgo Blog

MYSQL: Często używane polecenia

MYSQL: Często używane polecenia

Utworzenie użytkownika: GRANT ALL PRIVILEGES ON *.* TO user@"%" IDENTIFIED BY 'pass' WITH GRANT OPTION; Utworzenie hasła, zmiana hasła: set password for user = password(' newpassword '); Utworzenie kolumny typu string namepc o długości 20 znaków w tabeli clients ALTER TABLE `clients`…

MYSQL: Często używane polecenia

Utworzenie użytkownika:

GRANT ALL PRIVILEGES ON *.* TO user@"%" IDENTIFIED BY 'pass' WITH GRANT OPTION;

Utworzenie hasła, zmiana hasła:

set password for user = password('newpassword')

Utworzenie kolumny tekstowej namepc o długości 20 znaków w tabeli clients

ALTER TABLE `clients` ADD `namepc` VARCHAR( 20 ) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT 'ścieżka do komputera';

Zmiana danych w wierszu tabeli

UPDATE `basename`.`taclename` SET `mobtel` = '050888888',
`email` = 'name@name.com.ua', `icq` = '55555555' WHERE `name` ='username' LIMIT 1 ;

Wyczyszczenie tabeli:

TRUNCATE `mw_words_positions`

Tworzenie kopii zapasowej
mysqldump -u USER -pPASSWORD DATABASE > /path/to/file/dump.sql

Tworzenie struktury bazy danych bez danych
mysqldump --no-data - u USER -pPASSWORD DATABASE > /path/to/file/schema.sql

Jeśli konieczne jest wykonanie dumpu tylko jednej lub kilku tabel
mysqldump -u USER -pPASSWORD DATABASE TABLE1 TABLE2 TABLE3 > /path/to/file/dump_table.sql

Tworzenie kopii zapasowej i jej natychmiastowe archiwizowanie
mysqldump -u USER -pPASSWORD DATABASE | gzip > /path/to/outputfile.sql.gz

Tworzenie kopii zapasowej z podaniem daty
mysqldump -u USER -pPASSWORD DATABASE | gzip > `date +/path/to/outputfile.sql.%Y%m%d.%H%M%S.gz`

Wczytywanie kopii zapasowej do bazy danych
mysql -u USER -pPASSWORD DATABASE < /path/to/dump.sql

Wczytywanie archiwum kopii zapasowej do bazy
gunzip < /path/to/outputfile.sql.gz | mysql -u USER -pPASSWORD DATABASE
lub w ten sposób
zcat /path/to/outputfile.sql.gz | mysql -u USER -pPASSWORD DATABASE

Tworzenie nowej bazy danych
mysqladmin -u USER -pPASSWORD create NEWDATABASE

Wygodnie jest używać kopii zapasowej z dodatkowymi opcjami -Q -c -e, czyli
mysqldump -Q -c -e -u USER -pPASSWORD DATABASE > /path/to/file/dump.sql, gdzie:

  • -Q otacza nazwy odwrotnymi apostrofami
  • -c wykonuje pełną instrukcję INSERT, w tym nazwy kolumn
  • -e wykonuje rozszerzoną instrukcję INSERT. Plik wynikowy jest mniejszy i generuje się nieco szybciej

Do wyświetlenia listy baz danych można użyć polecenia:
mysqlshow -u USER -pPASSWORD

Można również wyświetlić listę tabel bazy:
mysqlshow -u USER -pPASSWORD DATABASE

Dla tabel InnoDB należy dodać opcję --single-transaction, co gwarantuje spójność danych w kopii zapasowej.

Uwaga: wpis mógł powstać z pomocą AI i redakcji. Odpowiedzialny: Dmytro Lomaka, Kaltenkirchen.