Создать дамп БД Mysql

Опубликовано 2015.03.09 в разделе MySQL.

Для создания дампа базы данных MySQL нужно использовать в SSH консоли следующие команды:
  1. mysqldump -u root --password=password database_name | gzip -c > /database_backup/database_name-`date "+%Y-%m-%d"`.gz
Если база расположена не на localhost - то можно добавить имя хоста:
  1. mysqldump -u root --password=password -hservername database_name | gzip -c > /database_backup/database_name-`date "+%Y-%m-%d"`.gz

Загрузить дамп в MySQL через консоль

Опубликовано 2015.02.07 в разделе MySQL.

В начале переходите в папку с дампом базы:
  1. cd /path/to/dump_folder
Затем в консоли нужно подключиться к mysql:
  1. mysql --host=localhost --user=myname --password=mypass mydb;
Потом просто:
  1. source my_dump.sql;
Чтобы покинуть mysql, но остаться в консоли - введите: Если база заархивирована в .sql.gz архив, то не подключаясь к mysql сразу вводите в консоли:
  1. gunzip < database.sql.gz | mysql -u myname -pmypass mydb;

sqlsrv_encoding_utf8

Опубликовано 2012.02.07 в разделе MySQL.

В базах данных от Microsoft (MSSQL) очень часто наблюдаются проблемы с кодировкой. Данные нужно переводить из windows-1251 в UTF-8. Это делается на уровне базы данных.Можно использовать функцию
  1. PDO::SQLSRV_ENCODING_UTF8
для драйвера PDO.Очень удобный драйвер для общения с любой базой данных.
  1. $serverName = "serverName\SQLEXPRESS";
  2. $name= "user_name";
  3. $pass = "password";
  4. $options = array(PDO::SQLSRV_ATTR_ENCODING=>PDO::SQLSRV_ENCODING_UTF8, "CharacterSet" => "UTF-8");
  5.  
  6. try
  7. {

Подсчёт суммы в MySql

Опубликовано 2011.11.18 в разделе MySQL.

Очень часто бывает необходимость подсчитать сумму в таблице mysql. Если быть точнее-сумму значений в определённых ячейках таблицы. Это делается спомощью оператора SUM. Этому оператору передается имя поля в качестве аргумента. Например имеем таблицу users пользователей, с указанием id, name, dateregister и money.
id name dateregister money
1 Вася 1312700694 125
2 Саша 1314555798 47
3 Коля

Group by mssql

Опубликовано 2011.09.20 в разделе MySQL.

В БД MSSQL оператор group by работает как то странно... У меня был запрос к MySql написанный для Drupal 7
  1. $query = db_select('cb_services_poll_child','p');
  2. $query ->leftJoin('cb_services_poll', 'pm', 'pm.id = '.$id_widget);
  3. $query ->fields('p', array('vote'));
  4. $query ->fields('pm', array('options'));
  5. $query ->addExpression('COUNT(*)','n');
  6. $query ->condition('p.srv_id', $id_widget);
  7. $query ->groupBy('p.vote');
  8. $result=$query->execute();

Подсчёт количества строк в таблице MySQL

Опубликовано 2011.08.07 в разделе MySQL.

Всем нам наверняка приходилось подсчитать количество строк в той или иной таблице,или выборке. Сделать это можно различными способами. В той или иной ситуации можно использовать любой из этих способов. Рассмотрим самый простой способ. Просто сделаем выборку и при переборе всех строк накрутим счётчик, который и будет содержать количество строк.
  1. $i=0;
  2. $sql='select * from `table`';
  3. $res=mysql_query($sql);
  4. while($row=mysql_fetch_assoc($res)){
  5. $i++;
  6. }
  7. echo 'В таблице '.$i.' строк';