Xpoint
логин (e-mail): пароль:
[напомнить пароль]
powered by Google
Регистрация
Форумы
Карта форумов
База знаний
Новости
Список пользователей
Присутствующие
Модераторы
ПРОСТО: где нужно писать SHOW DATABASES; , CREATE DATABASE mydb;
Xpoint.ru » Форумы » Компьютеры » Базы данных (СУБД) » СУБД MySQL
Форум F.A.Q. Полезные ссылки Архив форума Рейтинг пользователей
2007-02-21 17:47:34 Pasha L
Здравствуйте.
Задача шуточно проста: показать все имеющиеся бд или создать каую-нибудь бд. В хелпе одном написано: SHOW DATABASES; для вывода всех бд. Я запускаю bat c с содержанием mysql SHOW DATABASES; но вместо
Database
mysql
test
tmp
или чего то вроде этого я получаю то же, что получаю при mysql -?; Где нужно писать SHOW DATABASES?
спустя 1 час 14 минут Василий Свиридов
Создайте файл query.sql с текстом SHOW DATABASES
вызывайте mysql таким образом mysql < query.sql
спустя 1 час 15 минут Алексей Севрюков
Команды все надо запускать в пакетном режиме как уже показал Василий Свиридов либо из MySQL shell. Самый просто способ зайти в шелл это просто набрать mysql, либо полный вариант:
mysql -ulogin -ppassword
после успешного входа в шелл появится приглашение к вводу > и можно вводить запросы. Только учитывайте что каждый запрос должен оканчиваться символом ; или \G.
P.S. Есть вариант указывать запрос прямо в командной строке, для этого есть параметр -e (--execute).
спустя 1 час 7 минут Pasha L
Появившиеся вопросы:
Где находится этот самый shell
Делаю в точности так, как написал Василий Свиридов. Вывод:
D:\WebServers\usr\local\mysql4\bin>mysql 0<query.sql
ERROR 1045 (28000): Access denied for user 'ODBC'@'localhost' (using password: NO)
Дополнительная информация: я ещё не у себя создавал никаких БД. И поэтому не очень догоняю, какие я должен вводить login и password (про которые говорится в посте Алексея Севрюкова)
спустя 1 час 5 минут Василий Свиридов
Pasha LЕсли вы наберёте просто комманду mysql - вы попадаете в mysql shell
если вы наберёте mysql -h, вам будет показан help, в котором так-же указано как передавать имя пользователя и пароль. RTFM, вобщем.
спустя 2 минуты Pasha L
спасибо. Я RTFM, только там всё начинается сразу с команд эскьюэлю....
спустя 1 час 15 минут Pasha L
Извините, конечно, за непонятливость... Я делаю всё именно так, как понял из постов. В папке с mysql.exe создал два файла: query.sql и do.bat . В query.sql записал mysql > SHOW DATABASES; . В do.bat записал mysql.exe query.sql . Ничего не выходит. Как ПРАВИЛЬНО сделать?
спустя 1 час 55 минут Алексей В. Иванов
Что-то я не пойму, что тут происходит?!
Pasha L Вам PHP надо?
<?
mysql_connect('localhost', 'root', '');
$result = mysql_query('SHOW DATABASES');
while ($row = mysql_fetch_array($result)) print $row[0] . "";
?>
спустя 6 часов VLAD
Чё-то странное творицца в этом мире :-)
mysql -uВАШ_ЮЗЕР -pПАРОЛЬ_ЮЗЕРА -e "SHOW DATABASES"
mysql -uВАШ_ЮЗЕР -pПАРОЛЬ_ЮЗЕРА -e "CREATE DATABASE ИМЯ_НОВОЙ_БД"
В общем, аффтар, учите мат. часть
спустя 11 часов Pasha L
Промучался с хелпом ещё несколько часов. И получилось!!! Спасибо всем
спустя 2 часа 1 минуту Василий Свиридов
Pasha LПомимо MySQL вам следует подучить мат.часть и по оболочкам:
mysql > SHOW DATABASES; перенаправит вывод приложения mysql в файл с именем SHOW и передаст приложению mysql слово DATABASES в качестве параметра.
вам же нужно было вызвать mysql < query.sql, а в query.sql написать только SHOW DATABASES;
спустя 1 час Pasha L
ясно. а что такое мат. часть?
спустя 5 часов Алексей В. Иванов
М Перенесено из форума "Программирование::PHP"