Mysql sunucusunu nasıl başlatabilirim/durdurabilirim?

Mysql sunucusunun nasıl doğru bir şekilde başlatılacağını ve durdurulacağını açıklayan bazı makalelerde bulmaya çalıştım.

Bu bağlantıyı buldum: Ubuntu 8.04 üzerinde MySql sunucusu nasıl başlatılır/durdurulur | Abhi's Blogging World

Bu komutu çalıştırdım:

/etc/init.d/mysql start 

ancak şu hatayı görüyorum

ERROR 1045 (28000) Access denied for user....

Bu komutu denedikten sonra:

sudo /etc/init.d/mysql start

Şifremi girdim ve yine aynı hatayı görüyorum.

Sonraki komut:

sudo /etc/init.d/mysql - root -p start

Sonuçlar:

ERROR 1049 (42000) Unknown database 'start'.

Ve bu komutu çalıştırdığımda:

sudo service mysql start

MySQL sunucu başarısı başlatıldı. Harika!

Peki, diğer komutların nesi var? Neden hatayla sonuçlanıyorlar?

Çözüm

İlk iki komutunuz root olarak çalıştırılmadı, bu yüzden beklenen davranış budur. Mysql'i durdurmak/başlatmak için root olmanız gerekir.

Ancak:

sudo /etc/init.d/mysql start

işe yaramalı. Gerçekten de öyle, benim için:

kojan:~> sudo /etc/init.d/mysql restart
[sudo] password for chris: 
Stopping MySQL database server: mysqld.
Starting MySQL database server: mysqld.
Checking for corrupt, not cleanly closed and upgrade needing tables..

Zaten çalışmakta olduğu için başlat yerine yeniden başlat kullandım, ancak etki aynı. Şifrenizi doğru girdiğinizden emin misiniz? :) Bunun çalışmasını engelleyecek sudo yapılandırmanızı hiç düzenlediniz mi?

Bu..

sudo /etc/init.d/mysql - root -p start

Argümanlar yanlış. init.d betiği sadece start veya stop veya restart komutlarını alır - sadece ne yapacağını söyleyen tek bir kelime. Sizin yapmaya çalıştığınız gibi ona birden fazla argüman veremezsiniz.

Her neyse, kısa cevap, gerçekten işe yarayanın önerilen yol olduğudur. 'servis' zamanla tüm init.d betiklerinin yerini alıyor, bu yüzden 'servis' kullanma alışkanlığı edinmelisiniz. Bağlantısını verdiğiniz sayfa 3 yıllıktır, bu yüzden biraz tuzla alınmalıdır :)

Yorumlar (4)

Ayrıca "mysql"'in doğru hizmet adı olduğunu iki kez kontrol etmenize yardımcı olur. Benim durumumda değildi. Aşağıdaki yanıtı almaya devam ettim: mysql: çalıştırılırken tanınmayan hizmet

service mysql status 

Sonra /etc/init.d dosyasını kontrol ettim ve işlem adını listeleyen mysqld adlı komut dosyasını buldum: mysqld ve prog=mysqld

Sonra ben de

service mysqld status
service mysqld stop
service mysqld start 

ve hepsi iyi çalıştı.

Yorumlar (6)

Ubuntu 12.10 ve sonrası için:

MYSQL'I BAŞLAT:__

sudo start mysql

MYSQL'I YENIDEN BAŞLAT:__

sudo restart mysql # The service must be running

MYSQL'İ DURDUR:__

sudo stop mysql # The service must be running
Yorumlar (5)