Mysqldump не является внутренней или внешней командой исполняемой программой или пакетным файлом
Будучи разработчиком веб-приложений, легко впасть в заблуждение, считая, что приложение без JavaScript не имеет права на жизнь. Нам становится удобно.
Если вы ищете пакет для быстрой интеграции календаря с выбором даты в ваше приложения, то библиотека Flatpickr отлично справится с этой задачей.
Клиент для URL-адресов, cURL, позволяет взаимодействовать с множеством различных серверов по множеству различных протоколов с синтаксисом URL.
У каждого из нас бывали случаи, когда нам нужно отцентрировать блочный элемент, но мы не знаем, как это сделать. Даже если мы реализуем какой-то.
Ответы 2
Вы добавили двоичные файлы Postgres на свой путь в Windows? Казалось бы, это вероятная причина вашей проблемы.
- Windows 10 и Windows 8
- В поиске найдите и выберите: Система (Панель управления)
- Щелкните ссылку Дополнительные параметры системы.
- Щелкните Переменные среды.
- В разделе «Системные переменные» найдите переменную среды PATH и выберите ее. Щелкните Редактировать.
- Если переменная среды PATH не существует, нажмите «Создать».
- В окне «Изменить системную переменную» (или «Новая системная переменная») укажите значение переменной среды PATH.
- Щелкните ОК.
- Закройте все оставшиеся окна, нажав ОК.
- Снова откройте окно командной строки и запустите свой Java-код. (в нашем случае psql)
Вы должны добавить папку bin к своему пути, а не просто отдельный двоичный файл. Для справки также см. Этот вопрос: Как установить переменную пути Postgres в Windows 10
Большое спасибо за ответ, но, как я уже сказал выше, это именно то, что я сделал, и это не сработало: S, я дважды закрыл порт CMD и снова открыл его с правами администратора
Можете ли вы указать свой путь? Также можно ли выполнять через полностью определенный путь?
Вам нужно добавить корзину
да, я только что заметил, но я тоже добавил его, и это не сработало, теперь у меня все они добавлены, bin, script и lib
Я полагаю, вы закрыли и снова открыли все окна cmd?
да, я думаю, это сработало, но только с правами администратора! , спасибо большое, чувак
Потрясающие! Я рад это слышать. Если вы считаете, что мой ответ помог, я был бы признателен, если вы его приняли, в противном случае я желаю вам удачи.
Здравствуйте)Подскажите пожалуйста,как перенести базу данных с одного сервера на другой,просто записав ее в файл.И как потом возпроизвести эту базу данных на другом сервере.Я у вас прочитал все темы по переносу БД,но так ничего и не понял.
shell> mysqldump db_name > backup-file.sql
на новом сервере
shell> mysql db_name < backup-file.sql
А скажите где прописывать эти строчки:shell> mysqldump db_name > backup-file.sql ?
shell> указывает на то, что команда пишется в командной строке.
Если у Вас винда, то кнопка "Пуск", выполнить cmd
Не забудьте перейти в директорию MySQL
А на хостинге мне все это тоже выполнять через командную строку с компьютера?И если через нее,то мне надо зайти на FTP и прописать эти строчки в командной строке?А на хостинге мне прописывать тот же путь,что прописан у вас,или прописаыть какой то свой путь?
Отредактированно Никита (18.02.2008 14:23:07)
А у Вас на хостинге винда, чтобы указывать "C:\Program Files\MySQL\MySQL Server 5.1\bin"?
У Вас должен быть ssh доступ. Никаких путей указывать при этом не нужно.
А что такое ssh доступ?И что мне тогда прописывать в командной строке?
Попробуйте подключиться с помощью PuTTY
В командной строке на хостинге нужно выполнить "mysqldump db_name > backup-file.sql"
Я не знаю что такоеPuTTY . А когда я ввожу "mysqldump db_name > backup-file.sql",то мне выводится что это не является внутренней или внешней командой,исполняемой программой или пакетным файлом.
А какие возможности у Вас есть на хостинге? Может, там есть phpmyadmin или какой-то
другой интерфейс? Должен быть какой-то способ доступа к базе данных.
Да у меня есть phpmyadmin.А через него можно переносить базы данных?
Дамп, который Вы сделаете локально с помощью mysqldump, Вы можете восстановить
в phpmyadmin на сервере.
Дело в том,что я не смог сделать дамп базы данных. Когда я ввожу в командной строке нужные строки,то у меня выводится:что это не является внутренней или внешней командой,исполняемой программой или пакетным файлом.
А как мне потом занести дамп базы данных с помощью phpmyadmin на сервер?
У Вас сервер на windows? Тогда найдите где лежит mysqldump.exe и вызовите его с указанием пути.
В принципе phpmyadmin может делать и дамп и восстановление, но он часто с этим глючит, я бы его не рекомендовал.
А куда именно заходить в phpmyadmin,чтобы восстановить дамп, и куда там заходить,чтобы извлечь дамп?
Я весь ftp обыскал, но так и не нашел mysqldump.exe.Может у меня он называется: mysql-db-count?
Отредактированно Никита (18.02.2008 19:39:01)
mysqldump имеет смысл искать там, где лежит база, которую Вы хотите скопировать.
Насколько я понимаю, это Ваш локальный компьютер. Т.е. надо сделать что-то типа
Для восстановления, надо указать полученный файл в phpmyadmin на удаленном
сервере.
А если я вывел дамп с помощью phpmyadmin,но он вывелся в виде текстового файла.Значит тогда мне просто весь текст вставить в какое то определенное окно в phpmyadmin на сервере хостинга?
кодировку не потеряйте при этом, а вообще лучше бы он выдавался в виде файла; phpmyadmin зло
Просто я не знаю,как его выдать в виде файла,т.к. мне нужно перенести базу с хостинга на домашний сервер.А на хостинге я не умею делать удаленных доступов и всего такого.
Никита написал:
А если я вывел дамп с помощью phpmyadmin,но он вывелся в виде текстового файла.Значит тогда мне просто весь текст вставить в какое то определенное окно в phpmyadmin на сервере хостинга?
Я хочу создать резервную копию и откатить резервную копию базы данных, и я пытаюсь понять, что не так:
mysqldump не распознается как внутренняя или внешняя команда, работающая программа или командный файл.
Вышеупомянутое - это то, что я получаю в экспортируемом файле. И вот что я бегаю:
As $location это моя резервная папка. Так почему я получаю эту ошибку?
И в качестве дополнительной информации я тестирую на localhost с XAAMP, сервер Apache работает, и MySQL также работает.
задан 01 фев '12, 08:02
Звучит как mysqldump не может быть найден: он либо не установлен (я не знаю, можно ли это сделать отдельно, или это было бы очень странно для стека), либо, возможно, ваш пользователь (apache?) не имеет на него прав ? - Nanne
Если вы пытаетесь сделать это на виртуальном хостинге mysqldump также можно отключить. - Narek
Сначала я тестирую на localhost. - Roland
2 ответы
Я предполагаю, что вы работаете в Linux (или UNIX).
Чтобы знать, что каталог ведьм содержит mysqldump вы можете выполнить whereis mysqldump .
Тогда у вас есть два варианта:
Также вы можете выполнить mysqldump с полным путем:
И как мне найти этот путь? - Роланд
Мне пришлось добавить c:/xampp/mysql/bin/mysqldump . , там я нашел mysqldump.exe файл. Но что произойдет, если я запущу это на общем сервере? Мне не нужен этот путь, верно? А также как мне откатить БД? - Роланд
Вы можете параметризовать путь при параметризации соединения с базой данных. - Дани Эррера
Ну, я бы стал, но как виртуальный хостинг у меня нет доступа к папкам сервера mysql, только к папке корневого домена. Так что о наличии пути на общем хосте не может быть и речи, но для localhost. - Роланд
Возможно, на вашем хостинге mysqldump находится в PATH. В другом месте, если вы можете запустить, это означает, что это доступный путь. Спросите у администратора хостинга. - Дани Эррера
«ls» не распознается как внутренняя или внешняя команда, работающая программа или командный файл. Я получаю эту ошибку при попытке взглянуть на файлы моей папки.
Я недавно скачал anaconda для python. В процессе установки было время, когда я разрешал добавлять PATH, что не было рекомендовано. 'ls' работал хорошо
3 ответа
Я вполне уверен, что команда ls предназначена для Linux, а не для Windows (я предполагаю, что вы используете Windows, как вы упомянули cmd , который является командной строкой для ОС Windows).
Вместо этого вы должны использовать dir , что в Windows эквивалентно ls .
Вы не можете использовать ls в cmd , поскольку он не поставляется с Windows , но вы можете использовать его в других терминальных программах (таких как GitBash). Обратите внимание, что ls может работать на некоторых FTP серверах, если серверы основаны на linux и FTP используется из cmd .
dir в Windows похож на ls . Чтобы узнать различные доступные варианты, просто сделайте dir/? .
Если вы действительно хотите использовать ls , вы можете установить сторонние инструменты, позволяющие запускать команды unix на Windows . Такая программа Microsoft Windows Subsystem for Linux (ссылка на документы ) .
Если вы хотите использовать команды оболочки Unix в Windows, вы можете использовать Windows Powershell, который включает в себя как Windows, так и Unix команды в качестве псевдонимов. Вы можете найти больше информации об этом в документация.
PowerShell поддерживает псевдонимы для ссылки на команды с альтернативными именами. Псевдоним позволяет пользователям с опытом работы в других оболочках использовать общие имена команд, которые они уже знают, для аналогичных операций в PowerShell.
Эквиваленты PowerShell могут не давать идентичных результатов. Однако результаты достаточно близки, чтобы пользователи могли выполнять работу, не зная имени команды PowerShell.
Мы можем использовать ls и многие другие команды Linux в Windows cmd . Просто следуйте этим шагам.
2) После установки Git перейдите в папку, в которой установлен Git. В основном это будет в C drive , а затем в Program Files папке.
3) В папке Program Files вы найдете папку с именем Git , найдите папку bin который находится внутри папки usr в папке Git.
В моем случае местоположение для папки bin было - C:\Program Files\Git\usr\bin
4) Добавьте это местоположение ( C:\Program Files\Git\usr\bin ) в переменную пути в системе переменные среды .
5) Вы сделали. Перезапустите cmd и попробуйте запустить ls и другие команды Linux.
Всем привет, простите, что приходится возиться с новичком)) В общем, учу Python по книге A Byte of Python (Russian) Версия 2.01 Swaroop C H (Translated by Vladimir Smolyar). При написании простой программы, которая создает резервные копии файлов у меня вывелась такая вот ошибка. Архиватор стоит у меня WinRAR. Проверил переменную Path, путь к папке этого архиватора там тоже есть. Прошу помочь!
А вы уверены, что в вашей WinRAR папке лежит исполняемый файл zip.exe? Поскольку ваша программа пытается вызвать этот самый исполняемый файл.
3 ответа 3
Пишу пост впервые, поэтому сильно не ругайте, сам только учусь (стаж - 1 неделя :D ). Я смог заставить работать WinRar за место Zip'а, но немного изменил код, у меня он получился таким:
В 3 и 4 строчке изменил путь, предыдущий меня не устраивал, пускай не так красиво, но вроде работает.
В переменной zip_command (7 строка) изменил zip на rar (Гениально) аргумент поставил "а", то бишь создать архив, по факту это все изменения.
В переменную path добавил путь к WinRar, у меня он такой:
После в терминале (использую Visual Studio Code) нужно указать путь к папке, (команда вызова rar не работает, выдает ту же самую ошибку что нет такой команды. Подскажите кто в теме, я в силу отсутствия опыта и знаний сказать точно не могу :) ) путь таков:
После запуска программы все работает:
Надеюсь у Вас тоже заработает, пишите если что-то не так.
UPD: Понял причину почему rar не работает через path, хотя путь добавлен был верно, проверил догадку на счет пути к самой директории WinRar, он был: C:\Program Files\WinRAR\rar.exe Видимо из-за пробела в Program Files (А может из-за еще чего) было невозможно вызвать rar из командной строки. Перенес директорию WinRar в другое место (чтобы путь директории был без пробелов), поставил новый путь:
и вуаля - rar вызывается, программа работает без костыля с указанием папки в терминале.
Читайте также: