Jump to content

spoken

Актив
  • Регистрация

  • В сети

Reputation Activity

  1. Like
    spoken got a reaction from Andross in Чем разбить БД?   
    Имя админа mysql, как правило, root
     


     
    Да куда хочешь. В домашний каталог, например. Вот в какой каталог залили, туда переходишь командой cd и там выполняешь команду mysql с параметрами.
  2. Like
    spoken got a reaction from falkon in Чистка бд   
    Вот такой запрос поможет оценить что больше всего ест место в БД
    select table_name as Name, round((data_length+index_length)/1024/1024,2) as Size, table_rows as Rows from information_schema.tables where table_schema='table_ipb' order by Size desc limit 10; Вместо table_ipb надо вписать имя вашей БД для форума.
     
    Далее чистить подобным
    delete FROM ibf_inline_notifications where notify_read=1; commit; optimize table ibf_inline_notifications; truncate ibf_task_logs; commit; optimize table ibf_task_logs; truncate ibf_search_keywords; commit; optimize table ibf_search_keywords; truncate ibf_search_visitors; commit; optimize table ibf_search_visitors; truncate ibf_inline_notifications; commit; optimize table ibf_inline_notifications;
  3. Like
    spoken got a reaction from falkon in Чистка бд   
    Есть там еще одна хитрая таблица сессий, она прилично места в БД отъедала. Я для неё поменял тип на таблицу в памяти, то есть она не отъедает место в БД.
     
    Все удаления в БД надо проводить с головой, последствия могут быть печальными. Перед delete и truncate сделайте select, чтобы понимать что именно вы удалите потом.
     
    Вот с моей рабочей БД форума
     
    ibf_posts 268.97 68568 ibf_search_keywords 43.61 48397 ibf_sessions 30.65 103 ibf_inline_notifications 7.82 1906 ibf_skin_cache 6.08 166 ibf_message_posts 5.16 5397 ibf_search_visitors 4.94 16907 ibf_task_logs 4.78 5883 ibf_skin_templates 1.89 857 ibf_core_sys_lang_words 1.81 10873 смело можно чистить ibf_search_keywords, ibf_inline_notifications, ibf_search_visitors, ibf_task_logs более мне чистить нечего, поскольку ibf_sessions живет в памяти, а не в файле таблицы БД на диске.
  4. Like
    spoken got a reaction from Respected in Чистка бд   
    Есть там еще одна хитрая таблица сессий, она прилично места в БД отъедала. Я для неё поменял тип на таблицу в памяти, то есть она не отъедает место в БД.
     
    Все удаления в БД надо проводить с головой, последствия могут быть печальными. Перед delete и truncate сделайте select, чтобы понимать что именно вы удалите потом.
     
    Вот с моей рабочей БД форума
     
    ibf_posts 268.97 68568 ibf_search_keywords 43.61 48397 ibf_sessions 30.65 103 ibf_inline_notifications 7.82 1906 ibf_skin_cache 6.08 166 ibf_message_posts 5.16 5397 ibf_search_visitors 4.94 16907 ibf_task_logs 4.78 5883 ibf_skin_templates 1.89 857 ibf_core_sys_lang_words 1.81 10873 смело можно чистить ibf_search_keywords, ibf_inline_notifications, ibf_search_visitors, ibf_task_logs более мне чистить нечего, поскольку ibf_sessions живет в памяти, а не в файле таблицы БД на диске.
  5. Like
    spoken got a reaction from Respected in Чистка бд   
    Вот такой запрос поможет оценить что больше всего ест место в БД
    select table_name as Name, round((data_length+index_length)/1024/1024,2) as Size, table_rows as Rows from information_schema.tables where table_schema='table_ipb' order by Size desc limit 10; Вместо table_ipb надо вписать имя вашей БД для форума.
     
    Далее чистить подобным
    delete FROM ibf_inline_notifications where notify_read=1; commit; optimize table ibf_inline_notifications; truncate ibf_task_logs; commit; optimize table ibf_task_logs; truncate ibf_search_keywords; commit; optimize table ibf_search_keywords; truncate ibf_search_visitors; commit; optimize table ibf_search_visitors; truncate ibf_inline_notifications; commit; optimize table ibf_inline_notifications;
  6. Like
    Respected, спасибо.
     
    На самом деле делать перекодировку через дамп это глупость. Есть скрипт, который перекодирует БД без дампа. Просто положить его в корень форума и запустить.


    Скрипт такой. Сохранить под любым именем в корень форума и перейти по адресу скрипта.
    <?php // Database info include("conf_global.php"); $dbhost = $INFO['sql_host']; $dbuser = $INFO['sql_user']; $dbpass = $INFO['sql_pass']; $dbname = $INFO['sql_database']; //--------------- header('Content-type: text/plain'); $dbconn = mysql_connect($dbhost, $dbuser, $dbpass) or die( mysql_error() ); $db = mysql_select_db($dbname) or die( mysql_error() ); $timer['start'] = microtime(true); $sql = "ALTER DATABASE `".$dbname."` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci"; $result = mysql_query($sql) or die( mysql_error() ); print "Database changed to UTF-8.n"; $sql = 'SHOW TABLES'; $result = mysql_query($sql) or die( mysql_error() ); $sql = array(); while ( $row = mysql_fetch_row($result) ) { $table = mysql_real_escape_string($row[0]); $sql = "ALTER TABLE {$table} DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci, CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci"; mysql_query($sql) or die( mysql_error() ); print "{$table} changed to UTF-8.n"; } mysql_close($dbconn); $timer['end'] = microtime(true) - $timer['start']; echo "nPage generated in ". round( $timer['end'], 4 ); ?>
  7. Like
    Respected, спасибо.
     
    На самом деле делать перекодировку через дамп это глупость. Есть скрипт, который перекодирует БД без дампа. Просто положить его в корень форума и запустить.


    Скрипт такой. Сохранить под любым именем в корень форума и перейти по адресу скрипта.
    <?php // Database info include("conf_global.php"); $dbhost = $INFO['sql_host']; $dbuser = $INFO['sql_user']; $dbpass = $INFO['sql_pass']; $dbname = $INFO['sql_database']; //--------------- header('Content-type: text/plain'); $dbconn = mysql_connect($dbhost, $dbuser, $dbpass) or die( mysql_error() ); $db = mysql_select_db($dbname) or die( mysql_error() ); $timer['start'] = microtime(true); $sql = "ALTER DATABASE `".$dbname."` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci"; $result = mysql_query($sql) or die( mysql_error() ); print "Database changed to UTF-8.n"; $sql = 'SHOW TABLES'; $result = mysql_query($sql) or die( mysql_error() ); $sql = array(); while ( $row = mysql_fetch_row($result) ) { $table = mysql_real_escape_string($row[0]); $sql = "ALTER TABLE {$table} DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci, CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci"; mysql_query($sql) or die( mysql_error() ); print "{$table} changed to UTF-8.n"; } mysql_close($dbconn); $timer['end'] = microtime(true) - $timer['start']; echo "nPage generated in ". round( $timer['end'], 4 ); ?>
  8. Like
    spoken got a reaction from lg29 in IP.Board 3.3.x, 3.4.x Security Update   
    lg29, именно это обновление ничего в АЦ не меняет.
  9. Like
    Respected, спасибо.
     
    На самом деле делать перекодировку через дамп это глупость. Есть скрипт, который перекодирует БД без дампа. Просто положить его в корень форума и запустить.


    Скрипт такой. Сохранить под любым именем в корень форума и перейти по адресу скрипта.
    <?php // Database info include("conf_global.php"); $dbhost = $INFO['sql_host']; $dbuser = $INFO['sql_user']; $dbpass = $INFO['sql_pass']; $dbname = $INFO['sql_database']; //--------------- header('Content-type: text/plain'); $dbconn = mysql_connect($dbhost, $dbuser, $dbpass) or die( mysql_error() ); $db = mysql_select_db($dbname) or die( mysql_error() ); $timer['start'] = microtime(true); $sql = "ALTER DATABASE `".$dbname."` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci"; $result = mysql_query($sql) or die( mysql_error() ); print "Database changed to UTF-8.n"; $sql = 'SHOW TABLES'; $result = mysql_query($sql) or die( mysql_error() ); $sql = array(); while ( $row = mysql_fetch_row($result) ) { $table = mysql_real_escape_string($row[0]); $sql = "ALTER TABLE {$table} DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci, CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci"; mysql_query($sql) or die( mysql_error() ); print "{$table} changed to UTF-8.n"; } mysql_close($dbconn); $timer['end'] = microtime(true) - $timer['start']; echo "nPage generated in ". round( $timer['end'], 4 ); ?>
  10. Like
    spoken reacted to Sepsism in Как сменить пароли ?   
    RealUser, нет, не так. Более подробно то, о чем писали выше:
     
    Создаете нового юзера (назовем его temp_user) с нужным паролем. Затем смотрите в БД в таблице members значения полей members_pass_hash и members_pass_salt для пользователя temp_user. Предположим, они имеют значения "t548mad8bgfa7a4bh20b55f8c93e5a25" и "G0yrC" соответственно. Теперь вы знаете хеш и соль пароля, который вам нужен. Далее делаем запрос:
    UPDATE members SET members_pass_hash='t548mad8bgfa7a4bh20b55f8c93e5a25', members_pass_salt='G0yrC' Таким запросом вы смените пароль всем юзерам на тот, с которым вы создали пользователя temp_user. Естественно, вы можете задать условие WHERE, тогда пароли изменятся только у тех пользователей, записи которых в БД соответствуют заданному условию.
     
    Например, поменять пароль только пользователям с почтовым адресом "mail_we_need@example.com" вы сможете так:
    UPDATE members SET members_pass_hash='t548mad8bgfa7a4bh20b55f8c93e5a25', members_pass_salt='G0yrC' WHERE email='mail_we_need@example.com';
  11. Like
    spoken got a reaction from AUYKGN in Invision Power Board 3.4.7 Eng / Nulled IPBmafia.Ru   
    Я делал много мелких правок в коде движка и в шаблонах, теперь вот боюсь обновляться, поскольку потеряю все это. Даже не знаю что и делать. Так на 3.4.5 и сижу.
  12. Like
    spoken got a reaction from AlexBrtn in Условные операторы IP.Board   
    Первоисточник тут
    __community.invisionpower.com/resources/documentation/index.html/_/tutorials/skinning/template-logic-and-variables-r155
  13. Like
    spoken got a reaction from djinn in Условные операторы IP.Board   
    Первоисточник тут
    __community.invisionpower.com/resources/documentation/index.html/_/tutorials/skinning/template-logic-and-variables-r155
  14. Like
    spoken reacted to Respected in Invision Power Board 3.4.7 Eng / Nulled IPBmafia.Ru   
    spoken, тогда просто применяй патчи, обновишься на 4 со временем
  15. Like
    spoken got a reaction from AlexBrtn in Classifieds 1.2.1   
    Этой ошибке 100 лет в обед и исправляется тупо в шаблоне. Тупые авторы не проверяют массив на пустоту, в результате чего в цикл foreach пустота и попадает. NULL и EMPTY разные значения! Были уже тут темы с аналогичными ошибками и в других приложениях.
    Покажешь код шаблона, отвечающего за эту страницу, покажу как исправить.
  16. Like
    spoken reacted to Sanshalay in Обновление форума до IPS 4.0   
    Полностью с тобой согласен. Особенно с постскриптумом. Но четвёрка всё равно лажа ))
     
    Надо было сразу пятёрку делать, сейчас модно до 10 не уметь считать 
  17. Like
    spoken got a reaction from jheka7 in (PD34) YouTube Video Sidebar 1.0.0   
    KGstan, есть чо?
  18. Like
    Respected, спасибо.
     
    На самом деле делать перекодировку через дамп это глупость. Есть скрипт, который перекодирует БД без дампа. Просто положить его в корень форума и запустить.


    Скрипт такой. Сохранить под любым именем в корень форума и перейти по адресу скрипта.
    <?php // Database info include("conf_global.php"); $dbhost = $INFO['sql_host']; $dbuser = $INFO['sql_user']; $dbpass = $INFO['sql_pass']; $dbname = $INFO['sql_database']; //--------------- header('Content-type: text/plain'); $dbconn = mysql_connect($dbhost, $dbuser, $dbpass) or die( mysql_error() ); $db = mysql_select_db($dbname) or die( mysql_error() ); $timer['start'] = microtime(true); $sql = "ALTER DATABASE `".$dbname."` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci"; $result = mysql_query($sql) or die( mysql_error() ); print "Database changed to UTF-8.n"; $sql = 'SHOW TABLES'; $result = mysql_query($sql) or die( mysql_error() ); $sql = array(); while ( $row = mysql_fetch_row($result) ) { $table = mysql_real_escape_string($row[0]); $sql = "ALTER TABLE {$table} DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci, CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci"; mysql_query($sql) or die( mysql_error() ); print "{$table} changed to UTF-8.n"; } mysql_close($dbconn); $timer['end'] = microtime(true) - $timer['start']; echo "nPage generated in ". round( $timer['end'], 4 ); ?>
  19. Like
    Заново аватар загружали? Он же обрезается при загрузке видимо.
  20. Like
    spoken got a reaction from Kuki in Просмотр только 1й страницы   
    Блин, в упор не помню как редактировал поле permission_custom_error таблицы forums.
    Это сообщение редактируется через админку?

    Нашел, тут это в параметрах форума:
     
    Специальное сообщение, выводимое пользователям при попытке зайти в тему (если включен пункт выше)
     
    Ну и пункт выше включить:
    Разрешить пользователям видеть названия тем в списке, но запретить им просмотр содержимого этих тем?
  21. Like
    spoken got a reaction from Kuki in Просмотр только 1й страницы   
    Да, можно. Через настройки прав. Ставите "Просмотр форума", а "Чтение тем" не ставите.
     
    Я ещё кое-что модифицировал, чтобы при заходе в тему выдавалось не обычное сообщение об ошибке, а сообщалось, что этот раздел доступен только после регистрации.
  22. Like
    Respected, спасибо.
     
    На самом деле делать перекодировку через дамп это глупость. Есть скрипт, который перекодирует БД без дампа. Просто положить его в корень форума и запустить.


    Скрипт такой. Сохранить под любым именем в корень форума и перейти по адресу скрипта.
    <?php // Database info include("conf_global.php"); $dbhost = $INFO['sql_host']; $dbuser = $INFO['sql_user']; $dbpass = $INFO['sql_pass']; $dbname = $INFO['sql_database']; //--------------- header('Content-type: text/plain'); $dbconn = mysql_connect($dbhost, $dbuser, $dbpass) or die( mysql_error() ); $db = mysql_select_db($dbname) or die( mysql_error() ); $timer['start'] = microtime(true); $sql = "ALTER DATABASE `".$dbname."` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci"; $result = mysql_query($sql) or die( mysql_error() ); print "Database changed to UTF-8.n"; $sql = 'SHOW TABLES'; $result = mysql_query($sql) or die( mysql_error() ); $sql = array(); while ( $row = mysql_fetch_row($result) ) { $table = mysql_real_escape_string($row[0]); $sql = "ALTER TABLE {$table} DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci, CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci"; mysql_query($sql) or die( mysql_error() ); print "{$table} changed to UTF-8.n"; } mysql_close($dbconn); $timer['end'] = microtime(true) - $timer['start']; echo "nPage generated in ". round( $timer['end'], 4 ); ?>
  23. Like
    spoken got a reaction from SoundMonster in (Scrolling) Recent Posts Board Index   
    Блин, ну почему на мафии такие урезанные скриншоты хуков и их так мало?


    Упс, а в самом файловом архиве скриншот не урезанный, сорри.


    Поставил, спасибо! Скроллинг туповатый.
  24. Like
    spoken got a reaction from RealUser in (SOS34) Friends Online   
    leha85, в шаблоне globalTemplate есть метка к которой цепляется хук. А посмотреть её можно в параметрах хука.
  25. Like
    spoken got a reaction from AlexBrtn in E-mail в профиле как убрать   
    Её видит только админ.