Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
mysql:mysql [2016/09/29 03:52] – [Работа MySQL] mirocowmysql:mysql [2023/11/10 13:08] (текущий) – [Клиенты / Утилиты] 192.168.1.159
Строка 1: Строка 1:
-{{tag>Server mysql percona mariadb databases}}+{{tag>Server mysql percona mariadb databases errors}}
  
 ====== MySql ====== ====== MySql ======
Строка 14: Строка 14:
 $ install percona-server-common-5.6 percona-server-server percona-server-client $ install percona-server-common-5.6 percona-server-server percona-server-client
 </code> </code>
 +
 ===== Инициализация ===== ===== Инициализация =====
  
 <code> <code>
-dpkg-reconfigure mysql-server-5.1 - установка root пароля+dpkg-reconfigure mysql-server-5.1 - запуск настройки
 mysql_upgrade -u root -p --force - ремонт баз данных mysql_upgrade -u root -p --force - ремонт баз данных
 mysqlcheck -uroot -p --auto-repair --check --optimize --all-databases - ремонт баз данных mysqlcheck -uroot -p --auto-repair --check --optimize --all-databases - ремонт баз данных
Строка 28: Строка 29:
 </code> </code>
  
-===== Настройка и оптимизация =====+===== Настройкаоптимизация и обслуживание =====
  
   * [[mysql:my.cnf|]]   * [[mysql:my.cnf|]]
 +  * [[optimize|]]
 +  * [[mysql:dump-restore]]
 +  * [[mysql:manage]]
 +  * [[mysql:diff]]
 +  * [[develop:mysql]]
   * [[mysql:profiler|]]   * [[mysql:profiler|]]
 +  * [[sql:mysql]]
 +  * [[mysql:errors]]
  
-===== Dump =====+===== Описание движков и их особенностей =====
  
-<code> +  * [[db:mysql:engines:myisam|MyISAM, Aria]] 
-mysqldump -u[uname] -p[pass] > mysql.sql +  * [[db:mysql:engines:innodb|InnoDB, XtraDB]] 
-mysqldump -u[uname] -p[pass] [dbname] gzip -9 > backupfile.sql.gz +  * [[db:mysql:engines]]
-mysqldump --hex-blob -A > all_databases.sql +
-mysqldump --all-databases -u[uname-p[pass> dump.sql +
- +
-mysqldump --host=localhost --user=root --password=password --opt --skip-dump-date --skip-extended-insert --database [table-name] > /tmp/mydatabase.sql +
-</code> +
- +
-==== Утилиты ==== +
- +
-  * [[mysql:mysql_utils|]] - Архивирование БД (Ориентировался на Debian архитектуру) +
-===== Restore ===== +
- +
-<code> +
-mysql -u[uname] -p[pass] database_name < file_name.sql +
-gunzip -c /path/backup.Sql.Gz | mysql -h -u[uname] -p[pass] +
-gunzip < [backupfile.sql.gz] | mysql -u [uname] -p[pass] [dbname] +
- +
-/usr/bin/gunzip < database.gz database.sql +
-mysql -u[uname] -p[pass] username_dbname < database.sql +
- +
-mysql -u[user] -p database < database.sql +
-mysql>source /path/to/database.sql +
-</code> +
- +
-==== Утилиты ==== +
- +
-  * [[mysql:mysql_utils|]] - Архивирование БД (Ориентировался на Debian архитектуру) +
- +
- +
-====== SQL ====== +
- +
-<code sql> +
-SHOW DATABASES; +
-SHOW TABLES; +
-CREATE DATABASE rxmeditrend; +
-USE rxmeditrend; +
- +
-SELECT User, Host FROM mysql.user; # List all the users in the system +
-CREATE USER 'username' IDENTIFIED BY 'password'; +
-GRANT ALL ON rxmeditrend.* TO 'username'; +
-SHOW GRANTS FOR 'username'@'host'; +
-SET PASSWORD FOR 'username'@'host' = PASSWORD('password'); +
-FLUSH PRIVILEGES; # Flush privileges after manually manipulating the user table +
- +
-SHOW TABLE STATUS; +
-</code> +
- +
-===== MyISAM ===== +
- +
-  * tbl_name.frmTable definition +
-  * tbl_name.MYD: Table data +
-  * tbl_name.MYI: Table indexes +
- +
-<code> +
-CHECK TABLE tbl_name QUICK; +
-REPAIR TABLE tbl_name EXTENDED; +
-</code> +
- +
-===== InnoDB ===== +
- +
-[[restore|Восстановление]] +
- +
-  * ibdata1: By default all data and indexes for all tables/databases is stored in a single, shared file: ibdata1. idbata1 does not shrink. If rows are deleted, space will be reclaimed by new rows, but the file will only grow in size. +
-  * ib_logfile0 and ib_logfile1: Redo log files to recover lost data if MySQL is not shutdown properly. +
-  * tablename.frm: Each table has a small *.frm file in the database-specific directory which stores the table definition.+
  
-====== Компаненты / Настройка / Клиенты ======+==== Клиенты / Утилиты ====
  
-  * **[[mysql:mysql_utils|]]** - Архивирование БД (Ориентировался на Debian архитектуру)+  * [[develop:dbeaver|]] ([[os:windows|Windows]], [[os:macos|MacOS]], [[os:linux|Linux]]) на базе eclipse :!: 
 +  * [[mysql:mysql_utils|]] :!: - Архивирование БД (Ориентировался на Debian архитектуру) 
 +  * [[https://github.com/robmorgan/phinx|Миграции]]
   * http://www.chive-project.com   * http://www.chive-project.com
   * https://www.phpmyadmin.net/   * https://www.phpmyadmin.net/
Строка 111: Строка 57:
   * http://www.heidisql.com/   * http://www.heidisql.com/
   * **https://www.adminer.org/** (1 файл)   * **https://www.adminer.org/** (1 файл)
-  * http://www.sequelpro.com/ (MacOS) +  * http://www.sequelpro.com/ ([[os:macos|MacOS]])
-====== Ссылки ======+
  
-==== Движки ==== 
  
-  * [[db:mysql:tables|MyISAM, Aria]] +===== Ссылки / Документация / Примеры ===== 
-  * [[db:mysql:tables|InnoDB, XtraDB]]+ 
 +==== Примеры ====
  
-==== Работа MySQL ==== 
  
   * [[:Закрепить запись наверху при выборке|Закрепить запись наверху при выборке]]   * [[:Закрепить запись наверху при выборке|Закрепить запись наверху при выборке]]
   * [[sql:order fields by id|выбрать записи с определёнными id соблюдая порядок]]   * [[sql:order fields by id|выбрать записи с определёнными id соблюдая порядок]]
-  * [[optimize|]]+  * [[sql:mysql:update-someself]] How can i update itself in mysql/mariadb 
 +  * [[sql:mysql:select]] 
 +  * [[sql:mysql:select:field_in_set]] 
 +  * [[deadlock|deadlock]] - Взаимная блокировка 
 +==== Ссылки / Документация ==== 
 + 
   * [[http://www.codinghorror.com/blog/2007/10/a-visual-explanation-of-sql-joins.html|A Visual Explanation of SQL Joins]]   * [[http://www.codinghorror.com/blog/2007/10/a-visual-explanation-of-sql-joins.html|A Visual Explanation of SQL Joins]]
   * [[http://www.collation-charts.org/mysql60|mysql collation charts]]   * [[http://www.collation-charts.org/mysql60|mysql collation charts]]
Строка 131: Строка 81:
   * http://www.sql.ru/   * http://www.sql.ru/
   * http://eddnet.org/?cat=102   * http://eddnet.org/?cat=102
-  * [[deadlock|deadlock]] - Взаимная блокировка 
-  * [[:db:mysql:tables|Краткий обзор движков таблиц MySQL]] 
   * [[http://habrahabr.ru/post/46542/|Блокировки в MySQL]]   * [[http://habrahabr.ru/post/46542/|Блокировки в MySQL]]
   * http://oksoft.blogspot.in/2008/10/mysqldump-backups-and-transfers.html   * http://oksoft.blogspot.in/2008/10/mysqldump-backups-and-transfers.html
Строка 151: Строка 99:
   * [[http://rmcreative.ru/blog/post/mysql-vybrat-novosti-s-opredeljonnymi-id-sobljudaja-porjadok|Выбрать новости с определёнными id соблюдая порядок]]   * [[http://rmcreative.ru/blog/post/mysql-vybrat-novosti-s-opredeljonnymi-id-sobljudaja-porjadok|Выбрать новости с определёнными id соблюдая порядок]]
   * [[http://www.codinghorror.com/blog/archives/000976.html|A Visual Explanation of SQL Joins]]   * [[http://www.codinghorror.com/blog/archives/000976.html|A Visual Explanation of SQL Joins]]
-  * [[sql:mysql:update-someself]] How can i update itself in mysql/mariadb 
-  * [[sql:mysql:select]] 
-  * [[sql:mysql:select:field_in_set]] 
-==== Миграции ==== 
- 
-  * https://github.com/robmorgan/phinx 
- 
-==== Обслуживание MySql ==== 
- 
-  * **[[:mysql:errors|]]** 
-  * **[[:mysql|Сброс пароля root в MySQL]]** 
-  * **[[mysql:mysql_utils|]]** - Архивирование БД (Ориентировался на Debian архитектуру) 
-  * [[:mysql:debian|Восстановление пользователя debian-sys-maint]] 
-  * [[repaire|Восстановление таблиц MySql]] 
-  * [[:mysql:restore-gz|Восстановление таблиц из GZ файлов]] 
- 
-==== Кодировка ==== 
- 
-  * character_set_client - кодировка, в которой данные будут поступать от клиента 
-  * character_set_connection - кодировка по умолчанию для всего, что в рамках соединения не имеет кодировки 
-  * character_set_database - кодировка по умолчанию для баз 
-  * character_set_filesystem - кодировка для работы с файловой системой (LOAD DATA INFILE, SELECT ... INTO OUTFILE, и т.д.) 
-  * character_set_results - кодировка, в которой будет выбран результат 
-  * character_set_server - кодировка, в которой работает сервер 
-  * character_set_system - кодировка, в которой задаются идентификаторы MySQL, всегда UTF8 
-  * character_sets_dir - папка с кодировками  
- 
-==== Индексы ==== 
- 
-  * http://use-the-index-luke.com/ 
-  * [[http://habrahabr.ru/post/70640/|Индексы в MySQL: многоколоночные индексы против комбинированных индексов]] 
-   
-==== Деревья ==== 
-  * [[http://pratchev.blogspot.com/2007/02/convert-tree-structure-from-nested-set.html|Convert Tree Structure From Nested Set Into Adjacency List]] 
-  * [[http://data.bangtech.com/sql/nested_set_treeview.htm|Convert an adjacency list model into a nested set model]] 
-  * [[http://articles.sitepoint.com/print/hierarchical-data-database|Storing Hierarchical Data in a Database]] 
- 
-==== Быстродействие / Performance ==== 
- 
-  * https://www.percona.com/blog/ 
-  * [[mysql:sqL-slow-query-monitor]] 
-==== Книги ==== 
-  * [[http://www.celko.com/books.htm]] 
- 
-==== Безопасность ==== 
-  * [[http://webew.ru/articles/2078.webew|SQL-инъекции]] 
- 
-