Все технические форумы на одном сайте Удобный поиск информации с популярных форумов в одном месте
Вопрос: База данных mysql забирает всю память процессора

Здравствуйте, помогите пожалуйста разобраться с базой данных MySQl. Сайт на drupal 7. Сервер #1 выделенный: 8 ядер, 30 гб оперативной памяти, 1 терабайт жесткий диск. Сервер #2 выделенный, подключенный по UTP в одной стойке: 4 ядра, 15 гб оперативной памяти, 500 гб жесткий диск. Сделал репликацию где сервер №1 master, а сервер №2 slave. Проверяя операцией
автор
SELECT 'USER', COUNT(*) FROM information_schema.processlist GROUP BY 'USER';
при например 9 юрерах все работает хорошо, но при 150 пик это с утра до вечера, вся память процессора забита MySQL. В день у нас 6000 уникальных пользователей и 80000 в среднем просмотров страниц. Подскажите пожалуйста что можно сделать? Спасибо
Ответ:
Don karleone
Подкажите пожалуйста как можно сделать индексы?
Командой , например.
Don karleone
И на все ли таблицы нужно сделать индексы?
Необходимость индексов происходит из выполняемых запросов, а не из таблиц.
В двух словах этого не описать, в доке про это целая глава есть -
Don karleone
Как запросы передать на оперативку?
Если речь про временные файлы, то ищите по словам "tmpfs mysql". Вот пара ссылок:

Вам также можеть быть интересно:

Построчное чтение данных
Миграция запроса с oracle в pg
Тормозит UPDATE
В postgressSQL пропали файлы
SSAS DMV
Вопрос: База данных MySql и веб сервер + нужно написать клиента

Здравствуйте уважаемые форумчане
суть моей проблемы заключается в том что мне дали курсовую требования: трехуровневая система БД сделаная на MySql кинуть эту базу на веб сервер, прописать ssl сертификат и написать клиента
обьясните мне пожалуйста на чем я должен писать клиента???? т.е это должен быть сайт?? или приложение??? подскажите на чем мне его написать и как .... я в этом деле еще НУБ поэтому прошу вашей помощи
я поднял сервак на denver создал там базу данных MySql теперь ломаю голову как мне написать клиента и на чем..... если я сделал что то не правильно поправьте прошу!)))
Ответ: можешь писать на чем угодно. на чем тебе проще? )
PHP-сайт, .NET (C#- десктопное приложение , ASP.NET MVC- сайт).
PHP c нуля ,наверное, будет проще.
Вот один из многочисленных примеров - .
Вопрос: Поврежденная база данных MySQL

Всем доброго вечера.
У меня есть поврежденная база данных MySQL, и я пытаюсь восстановить ее, но каждый раз когда я запускаю восстановление, база данных становится пустой, не смотря на то, что исходный размер составляет около 4,7 Гб ... как я могу восстановить базу без потери каких-либо данных? Сроки жмут, поэтому мне нужно быстрое восстановление базы данных mysql !
Ответ: Akina,

наверно качественно и дешево будет лучше, чем быстро
Вопрос: Пропадает соединеия субд MySQLWorbench c сервером базы данных MySQL-5.7-х64

Добрый день! Помогите, пожалуйста, возникла проблема никак не могу решить!
Использую модуль сервера базы данных MySQL-5.7-х64, который входит в комплекте с OpenServer.
Подключаю субд MySQLWorkbench 6.4 CE. Соединение устанавливается, получается управлять базой данных со всеми
правами на удаление и создания бд. Однако, после примерно 1 минуты БЕЗДЕЙСТВИЯ пропадает соединение и при
очередном SQL запросе выводится сообщение Error Code: 2013. Lost connection to MySQL server during query
0.000 sec, а затем Error Code: 2006. MySQL server has gone away 0.000 sec. В настройках Open Servera во вкладке
FTP сервер поставил таймаут подключения и таймаут бездействия 99999. Однако, не помогает проблема остается.

Добавлено через 2 часа 30 минут
Нашел решение! изменил значение переменных @@global.net_write_timeout; @@global.net_read_timeout; @@global.wait_timeout; @@global.interactive_timeout;
Ответ: А где это меняется не подскажите? Сейчас нахожусь в файле MySQL-5.5_my.ini , "@@global.net_" такого нету, есть просто "read_timeout", но изменение этих переменных результата не дает
Вопрос: Отправка данных в MySQL с помощью Ajax

Подскажите,у меня не все данные приходят в MySQL.Данные отправляются с помощью Ajax.

База данных:finish_two,
Имя пользователя: fin,
Таблица: finish,
Пароль:12345.

Три файла: index.html, test.js, test.php.


index.html

<!DOCTYPE html>
<html lang="ru">
<head>
<meta charset="UTF-8">
<title>Отправка данных</title>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.5/jquery.min.js"></script>
<script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/jquery-ui.min.js"></script>
<script src="scripts/test.js"></script>
</head>
<body>
<!-- action="#" определяет адрес, куда отправляется форма
(по умолчанию действие установлено на текущую страницу) необязателен. -->
<form method="post" action="#">
<!-- placeholder="" - Выводит текст внутри текстового поля, который исчезает при получении фокуса. -->
<input type="text" name="name" id="name" placeholder="Введите имя">
<input type="text" name="surname" id="surname" placeholder="Введите фамилию">
<button id="btn">Отправить</button>
</form>
<div id="one"></div>

</body>
</html>

test.js

$(document).ready(function() {

$('#btn').click (function(){

$.ajax({
url:"../php/test.php",
type:"POST",
cashe:false,
data:{ name:$('#name').val(), surname:$('#surname').val() }, // Отправка
success: function (data) {
$('#one').html(data);
}

});

});

});

test.php

<?php



$name = $_POST['name'];
$surname = $_POST['surname'];


$dbc = mysqli_connect('localhost', 'fin', '12345', 'finish_two');
$query = "INSERT INTO finish (name, surname)".
"VALUES('$name','$surname')";

$result = mysqli_query($dbc,$query)
or die(mysqli_error($dbc));

mysqli_close($dbc);


?>

Отправлял буквы для тестирования по порядку:А, Б, В, Г, Д

В базу MySQL пришли: Б, Г, Д (см.фото), подскажите где ошибка? При тестировании не выдаёт никаких ошибок, а все данные не приходят.
Прикреплено изображение (Нажмите для увеличения)

Ответ:
Всё решил)))) вопрос можете закрыть
Вопрос: Ошибка в отправке данных с формы хтмл в бд

Помогите пожалуйста, ошибку уже пытался исправить, писал код и так и сяк, а он всё равно - ошибка. Говорит что ошибка в строчке отправки данных. Вот:
PHP
1
2
3
4
5
6
7
8
9
if (isset($_POST['submit'])) {
    $name = $_POST['name'];
    $password = $_POST['password'];
}
$result = mysql_query("INSERT INTO users (login, password) VALUES ('$name', '$password')");
//Если запрос пройдет успешно то в переменную result вернется true
if($result == 'true') 
{echo "Ваши данные успешно добавлены";}
else{echo "Ваши данные не добавлены";}
И на всякий случай дам дополнительно остальную часть кода
Весь пхп
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<?php
 
$host = "localhost";
 
$user = "Скрыл";
 
$password = "Убрал";
 
$db = "На всякий случай";
 
$link = mysqli_connect($host, $user, $password, $db);
 
$select = mysqli_select_db($link, $db);
 
if (isset($_POST['submit'])) {
    $name = $_POST['name'];
    $password = $_POST['password'];
}
$result = mysql_query("INSERT INTO users (login, password) VALUES ('$name', '$password')");
//Если запрос пройдет успешно то в переменную result вернется true
if($result == 'true') 
{echo "Ваши данные успешно добавлены";}
else{echo "Ваши данные не добавлены";}
?>
Весь хтмл
HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
<!DOCTYPE html>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        <meta name=viewport content="width=device-width, initial-scale=1" />
    <title>S.T.A.L.K.E.R. - online</title>
    <link rel="shortcut icon" href="img/ikon.jpg" type="image/x-icon">
    </head>
    <body bgcolor='19191b'>
        <center>
        <table border='1'>
            <tr><td>
        <center>
            <img src='img/regg.jpg' alt='Перезагрузите сайт или поменяйте браузер.'><br />
        <font color="555454"> Почти всё! Напиши снизу свой придуманный логин и пароль. </font><br />
        
        Правило написания формы: <br /><font color="red">Фашизм, нацизм, оскрбляющий текст,
        ники админ <br /> состава или на подобии ЗАПРЕЩЕНО !!!</font>
        <form method="post">
            <font color='gray'>Ваш логин: &nbsp; <input type="text" placeholder='Login' maxlenght="20" class="searchcsField" name="name" required /><br />
            Ваш пароль: <input type="password" placeholder='Password' maxlenght="25" class="searchcsField" name="password" required /></font><br />
            &nbsp; <input type='submit' class="searchcs2" name='submit' value='Зарегистрироватся' />
        </form>
        </center>
        </td></tr>
        </table>
        </center>
    </body>
</html>
PHP
1
$result = mysqli_query("INSERT INTO users (login, password) VALUES ('$name', '$password')");
В этой строчке кода изменил mysql_query на mysqli_query
ошибка изменилась!
Вот текст ошибки - Warning: mysqli_query() expects at least 2 parameters, 1 given in public_html/reg/index.php on line 19
Ответ: Может название столбца неправильно написали
Вопрос: Как формировать отчеты из базы данных MySql в google таблицы?

Имеется база данных о проделанной работе сотрудников. Надо сформировать отчет в Google таблицы за определенный период при нажатии на кнопку. Как это сделать?
Ответ: По первой части все просто: средствами любого популярного ЯП (С++, java, прости Господи C#) дергаем данные из таблицы и преобразуем их в нужный формат. Это легко, первая ссылка в гугле. По второй - надо погуглить. Мне лень
Вопрос: организация отправки данных в базу mysql из почтовых сообщений

Объекты ежедневно подаеют данные о пройденном расстоянии, потраченном топливе, запасах , и тд

Все эти данные подаются по электронной почте, в основном через Инмарсат

Подскажите пожалуйста, как можно автоматизировать отправку этих данных в базу данных ?
Ответ:
Alex_Ustinov
MasterZiv,

) ты пересел на питон?
Может тоже попробовать... )

не пересел, а добавил...
Вопрос: MySQL как восстановить поврежденную базу данных

Всем привет,

Я попытался применить резервную копию базы данных сервера MySQL в 2005 и увидел следующее сообщение " Неизвестная ошибка базы. Доступ к пути C: \ Program Files \ Microsoft MySQL Server \ ххххх \ MSQL \ Backup отказано " . Что это значит , повреждена моя база данных MySQL или че за бред ?
Ответ:
moraaleks пишет:
Всем привет,

Я попытался применить резервную копию базы данных сервера MySQL в 2005 и увидел следующее сообщение " Неизвестная ошибка базы. Доступ к пути C: \ Program Files \ Microsoft MySQL Server \ ххххх \ MSQL \ Backup отказано " . Что это значит , повреждена моя база данных MySQL или че за бред ?


Спасибо большое, за то что терпели мое нубство, Нашел ответ на другом сайте, кому интересно и кто может сталкивался с такой же проблемой вот ссылка на форуме Удачи Вам во всем) не болейте не ломайтесь))))
Или вот софт еще посоветовали попробовать Repair Toolbox for MySQL

(Отредактировано автором: 17 Сентября, 2015 - 11:48:07)

Вопрос: Не создается новый пользователь базы данных MySQL

Начинаю освоевать SQL, HO есть маленькая проблема. Начал читать книгу Алана Бьюли "Изучаем SQL".
И почти в первых же шагах не мог создать нового пользователя базы данных... Как показана в книге:
SQL
1
GRANT ALL privileges ON *.* TO 'lrngsql'@'localhost' IDENTIFIED BY 'xxxx'
Вписал строчку выдает ошибку: "Query
OK, 0 rows affected, 1 warning (0.00sec)"

Решил загуглить - попробывал уже по-другому написать:
SQL
1
CREATE USER 'lrngsql'@'localhost' IDENTIFIED BY 'xxxx';
-Ура, получилось. В книге следующим пунктоm было выйти(quit) и зарегестрироваться из консоли как новый пользователь посредствам команды:
SQL
1
mysql -u lrngsql -p
-> И дальше выбывает ошибку 1064: you have an error in sql syntax.
Ответ:
MySQL
1
TO 'lrngsql'@'localhost'
А "TO 'lrngsql'@'localhost'" создан, чтобы ему привилегии дать? Если не найден, то создается автоматически пустой. нужно сперва create, а после grant

Теперь не ясно, что там за мусор насоздан.
MySQL
1
select * from mysql.user;
Смотри, что создано. Удаляй не нужно.
MySQL
1
DROP USER 'lrngsql'@'localhost';
Создавай юзера
MySQL
1
CREATE USER 'lrngsql'@'localhost' IDENTIFIED BY 'xxxx';
Когда юзер с паролем будет создан дай ему привелегии
MySQL
1
GRANT ALL privileges ON *.* TO 'lrngsql'@'localhost'
Примени изменения
MySQL
1
FLUSH PRIVILEGES;
Вот теперь можешь выйти
MySQL
1
exit;
И попробовать залогиниться с другим юзером/паролем
Bash
1
mysql -u lrngsql -pxxx
П.С. после -p нет пробелов, сразу пароль