Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Terminal nie rozpoznaje poleceń mysqld i mysql

Pierwszy problem

Próbujesz wykonać polecenie mysqld_safe , więc to polecenie powinno znajdować się w ŚCIEŻCE gdzie terminal szuka poleceń. (Możesz wyświetlić te lokalizacje, uruchamiając echo $PATH . Poszczególne lokalizacje są oddzielone dwukropkiem).

Ponieważ próbujesz uruchomić plik znajdujący się w katalogu lokalnym, powinieneś wpisać ./mysqld_safe aby poinformować powłokę, że podajesz ścieżkę do pliku, w przeciwnym razie wyszuka ją w PATH . (Możesz uruchomić plik z dowolnego miejsca, podając pełną ścieżkę).

Innym rozwiązaniem jest utworzenie dowiązania symbolicznego w /usr/local/bin/ który wskazuje na /usr/local/mysql/mysqld_safe` (jest to ścieżka do polecenia, jeśli dobrze zrozumiałem). W ten sposób możesz uruchomić polecenie z dowolnego miejsca, ponieważ znajduje się na ścieżce, której szuka powłoka.

Drugi problem

cat polecenie otoczone znakami jest wykonywane przez powłokę przed uruchomienie polecenia sudo (jeśli plik był czytelny dla wszystkich, powłoka wykona coś takiego:sudo kill 12345 ).

Aby uruchomić cat jako root powinieneś uruchomić to polecenie:

sudo bash -c 'kill `cat /usr/local/mysql/data/rodongi.pid`'

W ten sposób uruchamiasz bash jako root, który z kolei uruchamia kill i w ten sposób odczytuje rodongi.pid plik jako root.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Przesyłanie wiersza tabeli HTML do php

  2. Zapisywanie plików jako blob w bazie danych ajax php pdo

  3. Podzapytanie MYSQL SELECT w klauzuli JOIN

  4. 3 sposoby na wykrycie, czy ciąg pasuje do wyrażenia regularnego w MySQL

  5. jednoczesne ODCZYT i ZAPIS w tabeli MySQL