Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: MYSQL: access denied
 
 автор: bonskii   (14.09.2004 в 21:46)   письмо автору
 
 

В командной строке mysql при попытке создать БД, выдает:

ERROR 1044: access denied for user: '@localhost' to database 'base'

набираю:

mysql> mysql -u name -p password;
где name - name в mysql.ini, password - password в mysql.ini

выдает:

ERROR 1064: You have an error in your SQL syntax...

Вопрос: как исправить?
что понимать под user ( -u) - bonskii или ODBC@localhost?

   
 
 автор: cheops   (14.09.2004 в 22:13)   письмо автору
 
   для: bonskii   (14.09.2004 в 21:46)
 

Так какая из двух ошибок возникает 1044 или 1064...
Первая ошибка связана с тем, что у пользователя нет прав доступа для выполнения SQL-инструкции CREATE DATABASE, для их установки следует войти из-под root и выставить права пользователю - подробности по ссылке.

Под user следует понимать bonskii, кстати, если происходит авторизация, то MySQL должна писать bonskii@localhost.

Задавался ли пароль для пользователя bonskii и вообще использовался ли оператор GRANT?

http://www.softtime.ru/forum/read.php?id_forum=1&id_theme=87

   
 
 автор: bonskii   (14.09.2004 в 22:48)   письмо автору
 
   для: cheops   (14.09.2004 в 22:13)
 

Пароль задавался, а что за GRANT - впервые слышу... :)

ошибки возникают соответственно командам, первая после create database, вторая - после mysql -u... -p...

И вообще, на локальной машине не нужен пароль, вроде?..

В MYSQL Control Center при попытке соединиться с сервером пишет:

[bonskii@localhost] ERROR 1130: Host 'bonskii' is not allowed to connect to this MySQL server

   
 
 автор: cheops   (14.09.2004 в 23:34)   письмо автору
 
   для: bonskii   (14.09.2004 в 22:48)
 

Пароль на локальной машине можно оставить пустой... Но все пользователи базы данных MySQL создаются SQL-оператором GRANT, т.е. прописать пользователя в my.ini не достаточно.
При инсталляции по умолчанию в системе 2 пользователя: ананимный и root, оба имеют пустые пароли. Всех остальных пользователей нужно создавать.

   
 
 автор: glsv (Дизайнер)   (14.09.2004 в 23:24)   письмо автору
 
   для: bonskii   (14.09.2004 в 21:46)
 

Так а вы неправильно входите. Вы сначала вошли анономным пользователем, которому не разрешено создавать базы данных. А потом пытаетесь войти под другим пользователем, но ... Вам нужно сначало выйти из mysql. - exit;

Т.е. должно быть НЕ

mysql> mysql -u name -p password;

А должно быть вот так

mysql -u name -p password

Иначе у Вас неправильный синтаксис. Но что он и ругается.

А зачем Вам пользователь bonskii? Вы же на локольной машине. Входите под пользователем root. Он по умолчанию без пароля. И прав никаких выставлять не надо.


mysql -u root


А... ну если у Вас другое имя пользователя и пароль, то смотрите их в my.ini

   
 
 автор: bonskii   (14.09.2004 в 23:39)   письмо автору
 
   для: glsv (Дизайнер)   (14.09.2004 в 23:24)
 

Как же мне выйти из mysql, если, даже когда я пишу

-exit;

он мне error 1064...

не совсем понял последовательность моих действий...

   
 
 автор: cheops   (14.09.2004 в 23:51)   письмо автору
 
   для: bonskii   (14.09.2004 в 23:39)
 

Эту команду следует писать без точки с запятой и без тире:
exit

   
 
 автор: bonskii   (14.09.2004 в 23:52)   письмо автору
 
   для: cheops   (14.09.2004 в 23:51)
 

далее...

   
 
 автор: bonskii   (14.09.2004 в 23:54)   письмо автору
 
   для: cheops   (14.09.2004 в 23:51)
 

кажись понял... :)

   
 
 автор: bonskii   (14.09.2004 в 23:59)   письмо автору
 
   для: cheops   (14.09.2004 в 23:51)
 

тогда другой вопрос, почему, когда я пишу mysql -u bonskii -p --> Enter Password: ******

после того, как набираю скрытый пароль и жму enter, окно закрывается?

   
 
 автор: cheops   (15.09.2004 в 00:03)   письмо автору
 
   для: bonskii   (14.09.2004 в 23:59)
 

Да... не знаю вообще говоря, не должно бы, а у вас какая операционная система?

   
 
 автор: bonskii   (15.09.2004 в 00:11)   письмо автору
 
   для: cheops   (15.09.2004 в 00:03)
 

WinXP

   
 
 автор: glsv (Дизайнер)   (15.09.2004 в 00:28)   письмо автору
 
   для: bonskii   (14.09.2004 в 23:59)
 

А в чем обoщаетесь с mysql. Cmd?
Я сейчас тоже в нем попробовал - не закрывается. А сам под Far-ом общаюсь.

   
 
 автор: bonskii   (14.09.2004 в 23:44)   письмо автору
 
   для: glsv (Дизайнер)   (14.09.2004 в 23:24)
 

кстати, в WinMySQLAdmin 'Local IP Address' 83.237.10.132, хотя, как я понимаю, должен бы 127.0.0.1 писать...

   
 
 автор: cheops   (14.09.2004 в 23:57)   письмо автору
 
   для: bonskii   (14.09.2004 в 23:44)
 

Если беспокоитесь можно запретить доступ к машине по сети, удалив пользователей 'root'@'%' и ''@'%', кроме того вы всегда можете контролировать соединения на закладке Process - все соединения должны заканчиваться на localhost.

   
 
 автор: bonskii   (15.09.2004 в 00:14)   письмо автору
 
   для: cheops   (14.09.2004 в 23:57)
 

интересно, как их удалить, вроде и нет пользователей больше...

   
 
 автор: cheops   (15.09.2004 в 00:28)   письмо автору
 
   для: bonskii   (15.09.2004 в 00:14)
 

Ну это не пользователи на самом деле, а доступ удалённый со всех хостов сети.

   
 
 автор: bonskii   (15.09.2004 в 00:16)   письмо автору
 
   для: cheops   (14.09.2004 в 23:57)
 

спасибо за помощь, дальше попробую своими силами... :)

   
 
 автор: LimP   (15.09.2004 в 14:08)   письмо автору
 
   для: bonskii   (15.09.2004 в 00:16)
 

пишешь в дос коммандере:
c:\mysql\bin\mysql -h localhost -u root
(localhost-это имя хоста,но щас стоит локалка,root-это имя пользователя базы данных,на локале обычно оно такое...,пароль на локале можно не вводить,так как по умолчанию он не установлен...
и нажимаешь enter, у тебя выводится метка mysql> и там уже пиши команды...
смотри у тебя комп стоит на локале,а ты хоть меняй пароль,хоть не меняй,все равно имя пользоватея будет root а пароля не будет...у меня тоже так было,я в my.ini писал свой логин и пароль и потом в командной строке указывал именно их,но тщетно,пока тут не увидел,что имя пользователя root а пароль нет пиши,т.к. его нет...попробовал...получилось,вывелась метка mysql> и все как по маслу...

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования