Архив записей, раздела 'MySQL'
MySQL 5 to MySQL 4.1 downgrade on Plesk
написано августа 26, 2010 - запись из раздела CentOS Linux, MySQL | Комментировать
Для сборки mysql на потребуется установить: yum install gcc ncurses-devel gcc-c++ берем тарбол mysql-4.1.22, распаковываем, собираем и ставим в /opt/mysql-4.1.22 дефолтная кодировка mysql будет cp1251 wget http://www.mirrorservice.org/sites/ftp.mysql.com/Downloads/MySQL-4.1/mysql-4.1.22.tar.gz tar zxf mysql-4.1.22.tar.gz cd mysql-4.1.22 ./configure –with-charset=cp1251 –with-collation=cp1251_general_ci \ –with-extra-charset=all –prefix=/opt/mysql-4.1.22 \ [...]
Table is marked as crashed and should be repaired
написано марта 16, 2009 - запись из раздела MySQL | Комментировать
Просматривая /var/log/mysql/error.log обнаруживаем ошибки вида: 090316 20:55:03 [ERROR] /usr/sbin/mysqld: Table ‘./user_base/table’ is marked as crashed and should be repaired если crashed всего несколько таблиц, то можно выполнить repair table из консольного mysql клиента или phpmyadmin при помощи sql запроса: > USE user_base > REPAIR TABLE TABLE; Если в базе crashed много таблиц, то будет проще [...]
резервное копирование (backup) всех баз mysql
написано февраля 11, 2009 - запись из раздела CentOS Linux, MySQL, Unix | 3 комментариев
Прошелся по нескольким блогам. почитал и удивился тому что для того чтобы сделать дампы всех баз mysql люди используют mysqldump –all-databases. На мой взгляд вариант более чем неудобный. Предложу более правильный вариант, снимаются дампы со всех баз данных каждая база в отдельный файл. Для пояснения: /backup/mysql/ – папка куда будем складывать дампы. megapass – пароль [...]
бакапим и ресторим базу MySQL
написано марта 12, 2008 - запись из раздела MySQL, Unix | Комментировать
Делаем дамп: # mysqldump –add-drop-table –host=localhost –user=root –password=111 basename > basename.sql Ресторим базу из дампа: # mysql –host=localhost –user=root –password=111 –default-character-set=cp1251 basename < basename.sql
дамп базы Mysql на e-mail
написано марта 12, 2008 - запись из раздела MySQL, Unix | 2 комментариев
Захотелось странного.. делать дамп базы и слать его на мэйл, тем более что gmail даёт дофигища места. На скорую руку был слеплен скрипт: cd /backup/user a=`date +%Y-%m-%d-`user_database.sql mysqldump -uuser_database -pdb_pass -hmysql_server user_database > $a && gzip $a echo "this is user_database database dump" | mutt shakirov@gmail.com -a $a.gz -s "database backup "$a
MySQL и кодировка
написано марта 11, 2008 - запись из раздела MySQL | Комментировать
Сконвертировать таблицу/базу Mysql можно так: ALTER TABLE table1 CONVERT TO CHARACTER SET cp1251_general_ci ALTER TABLE table1 DEFAULT CHARACTER SET cp1251_general_ci ALTER DATABASE database1 DEFAULT CHARACTER SET cp1251_general_ci кодировка по умолчанию настривается в my.cnf [mysqld] basedir="/путь/mysql/" datadir="/путь/mysql/data/" character-sets-dir="/путь/mysql/share/charsets" default-character-set="koi8r" default-collation="koi8r_general_ci" character-set-server="koi8r"
Смена root пароля на MySql
написано марта 11, 2008 - запись из раздела MySQL, Unix | Комментировать
[root@srv001 ~]# service mysqld stop [root@srv001 ~]# su mysql bash-3.00$ mysqld –skip-grant-tables Переходим в другую консоль и: [root@srv001 ~]# mysql -u root; mysql> use mysql; mysql> UPDATE user SET PASSWORD=NULL WHERE USER=’root’; mysql> FLUSH PRIVILEGES; [root@srv001 ~]# mysqladmin -h 127.0.0.1 -u root password ‘new_pass’ [root@srv001 ~]# killall -9 mysqld [root@srv001 ~]# service mysqld stop && [...]
Mysql: ограничение по числу коннектов в час.
написано марта 9, 2008 - запись из раздела MySQL | Комментировать
[root@srv ~]# mysql -uroot -p Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 4014 Server version: 5.0.45-log MySQL Community Edition (GPL) Type ‘help;’ or ‘\h’ for help. Type ‘\c’ to clear the buffer. mysql> use mysql Database changed mysql> UPDATE user SET max_questions=28800;
Joomla Проблемы с кириллицей в базе данных
написано марта 9, 2008 - запись из раздела MySQL, PHP | Комментировать
Как поставить Joomla если кодировка mysql отличная от cp1251 (например latin1_swedish_ci или utf8)? 1. Добавить в файл .htaccess строку: AddDefaultCharset windows-1251 2. В phpMyAdmin или из консоли: ALTER DATABASE имя_базы DEFAULT CHARACTER SET cp1251 DEFAULT COLLATE cp1251_general_ci 3. В CMS Joomla файл /includes/database.php найти строку: //@mysql_query(«SET NAMES ‘utf8′", $this->_resource); и заменить на: @mysql_query(«SET NAMES ‘cp1251′", [...]
Медленные запросы MySQL и логирование всех запросов.
написано марта 9, 2008 - запись из раздела MySQL, Unix | 1 комментарий
Для записи в журнал, всех медленных запросов к MySQL базе, пропишем в my.cnf: [mysqld] long_query_time=10 log-slow-queries=/var/log/mysqld/slowquery.log Для ведения полного лога всех запросов, при старте нужно указать опцию –log примерно так: mysqld –log=allquery.log