1 (04.04.2013 10:29:38 отредактировано Linux777)

Доброго дня!

Вот хочу поделиться опытом по БД mysql. Сам не раз имел проблемы с mysql, такие как "не могу подключиться к mysql, не могу сменить пароль, не могу создать пользователя и тд, криво встала mysql, ". Данную тему решил написать, во-первых может кому поможет, во-вторых, чтобы самому не забыть, пока все это делается на свежую голову. Итак, друзья, поехали ab

1) Тема первая  "криво встала mysql"

проверить это можно, криво встал у вас мускул очень просто, в консоле пишим dpkg -l | grep mysql.

root@SQUID:/home/squid# dpkg -l | grep mysql
ii  libdbd-mysql-perl               4.019-1                                 Perl5 database interface to the MySQL database
ii  libmysqlclient16                5.1.66-0ubuntu0.11.10.2                 MySQL database client library
ii  mysql-client-5.1                5.1.66-0ubuntu0.11.10.2                 MySQL database client binaries
ii  mysql-client-core-5.1           5.1.66-0ubuntu0.11.10.2                 MySQL database core client binaries
ii  mysql-common                    5.1.66-0ubuntu0.11.10.2                 MySQL database common files, e.g. /etc/mysql/my.cnf
ii  mysql-server                    5.1.66-0ubuntu0.11.10.2                 MySQL database server (metapackage depending on the latest version)
ii  mysql-server-5.1                5.1.66-0ubuntu0.11.10.2                 MySQL database server binaries and system database setup
ii  mysql-server-core-5.1           5.1.66-0ubuntu0.11.10.2                 MySQL database server binaries
ii  php5-mysql                      5.3.6-13ubuntu3.9                       MySQL module for php5

Если вы видете в консоле подобное, значит база даннных mysql встала отлично, и следует идти дальше смотреть, другие причины неправильной работы.
просто у меня была проблема, что база данных встала криво. об этом я писал в своей другой теме, смотрите решение тут Как убарть ошибки msql+php+cacti

также полезным будет просмотреть, слушается ли наш сервер порт 3306, пишем в консоле

root@SQUID:/home/squid# netstat -an | grep 3306
tcp        0      0 127.0.0.1:3306          0.0.0.0:*               LISTEN

если такое видим, значит все хорошо. это тоже важно, чтобы не было проблем с работой БД нашего мускула.

2) Тема два "смена пароля mysql "

Данная операция делается из под рута (можно делать и из под sudo) и делается она в 6 этапов, этапы напишу буквами:

а) Остановка мускула

root@SQUID:/home/squid# /etc/init.d/mysql stop
Rather than invoking init scripts through /etc/init.d, use the service(8)
utility, e.g. service mysql stop
Since the script you are attempting to invoke has been converted to an
Upstart job, you may also use the stop(8) utility, e.g. stop mysql
mysql stop/waiting

б) Запуск мускула в безопасном режиме safe с опцией --skip-grant-tables &   

root@SQUID:/home/squid# mysqld_safe --skip-grant-tables &

[1] 1188
root@SQUID:/home/squid# 121210 11:31:18 mysqld_safe Logging to syslog.
121210 11:31:18 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql

Мы должны увидеть время, миллисекуны и другие данные, в качестве примера я привел три строчки выше. После чего сразу логинемся в наш мускул.

в) Логинемся в мускул mysql -u root mysql

Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 1
Server version: 5.1.66-0ubuntu0.11.10.2 (Ubuntu)

Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql>

г) меняем пароль

mysql > mysqladmin -h localhost -u root password 12345

  (12345 - это новый пароль, в качестве примера тут привел пароль 12345)

д) сбросим привилегии, чтобы изменения вступили в силу

mysql > flush privileges

после чего выходим из базы мускул (можно так, можно так)

mysql > exit 
mysql > quit

е) запуск мускула обратно

root@SQUID:/home/squid# /etc/init.d/mysql start

ВСЕ! теперь можно идти в phpmyadmin и провериять пароль для рута. все должно работать! пробуйте!
Теперь можно создавать там новых пользователей.

добрый человек:)
Linux admin PC 3.8.0-23-generic #34-Ubuntu SMP Wed May 29 20:22:58 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux
system admin of unix. i like my job. also i like to catch fish and many other things and english too.
Хочу на пляж)

2

Linux777 пишет:

также полезным будет просмотреть, слушается ли наш сервер порт 3306, пишем в консоле

root@SQUID:/home/squid# netstat -an | grep 3306
tcp        0      0 127.0.0.1:3306          0.0.0.0:*               LISTEN

Если такое видим, значит все хорошо. это тоже важно, чтобы не было проблем с работой БД нашего мускула.

Это верно, тока для тех приложений которые будут использовать мускул по сети. А если програма которой нужен мускул и сама база на одном хосте тогда луче через сокэт. А мускулу запретить работать через сеть вообще в целях безопасности.

Trouble  in WINDOWS reboot, trouble in UNIX be root.
kisil пишет:

А если програма которой нужен мускул и сама база на одном хосте тогда луче через сокэт. А мускулу запретить работать через сеть вообще в целях безопасности.

О то ж! Апач, скажем...

4

kisil пишет:

Это верно, тока для тех приложений которые будут использовать мускул по сети. А если програма которой нужен мускул и сама база на одном хосте тогда луче через сокэт. А мускулу запретить работать через сеть вообще в целях безопасности.

Если апач стоит на одном сервере вместе с мускулом (или любая другая программа, работающая с мускулом), то лучше это делать через сокет, из-за соображений безопасности. а так все верно, если другие приложения работают просто в сети, и соответственно приложения стоят на других хостях и просто коннектятся к серверу mysql. Тогда все верно, что написал я

    также полезным будет просмотреть, слушается ли наш сервер порт 3306, пишем в консоле

    root@SQUID:/home/squid# netstat -an | grep 3306
    tcp        0      0 127.0.0.1:3306          0.0.0.0:*               LISTEN

    Если такое видим, значит все хорошо. это тоже важно, чтобы не было проблем с работой БД нашего мускула.

я правильно понял?

добрый человек:)
Linux admin PC 3.8.0-23-generic #34-Ubuntu SMP Wed May 29 20:22:58 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux
system admin of unix. i like my job. also i like to catch fish and many other things and english too.
Хочу на пляж)

5

Linux777, пользуйтесь соответствующими тэгами для оформления кода — текст воспринимается на порядок лучше!

Был, был и весь вышел...

6

Данная тема закрыта, пароль описан, как исправить. Спасибо Lupo Alberto.

Lupo Alberto пишет:

Linux777, пользуйтесь соответствующими тэгами для оформления кода — текст воспринимается на порядок лучше!

добрый человек:)
Linux admin PC 3.8.0-23-generic #34-Ubuntu SMP Wed May 29 20:22:58 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux
system admin of unix. i like my job. also i like to catch fish and many other things and english too.
Хочу на пляж)