MySQL nasıl yeniden başlatılır


32

MySQL 5.1.54 kullanıyorum ve komutu kullanarak terminal üzerinden Ubuntu'ya kurdum

sudo apt-get install mysql-server

my.cnfDosyayı değiştirdim ve durdurmak ve sonra veritabanını başlatmak istiyorum. Aşağıdakileri denedim

sudo /usr/bin/mysqld_safe stop

Sorum şu ki, veritabanının durdurulduğunu nasıl bilebilirim? Yukarıdaki komutu çalıştırdığımda, ardından

sudo mysql -uuser -ppassword

Veritabanına tekrar giriş yapabilirim. Bana veritabanının çalışmadığını söylememeli mi?

Baska öneri? Teşekkür ederim.

EDIT: Ben de denedim

mysqladmin -uuser -ppassword shutdown

ve sonra

ps aux | grep mysql

Aşağıdaki çıktıyı alıyorum

david    12093  0.0  0.0   6052  1276 pts/1    T    May10   0:00 nano /etc/mysql/my.cnf
root     12267  0.0  0.0   6396  1436 pts/1    T    May10   0:00 sudo nano /etc/mysql/my.cnf
root     12269  0.0  0.0   6052  1388 pts/1    T    May10   0:00 nano /etc/mysql/my.cnf
mysql    15371  0.3  0.1  55344  9088 ?        Ssl  10:53   0:00 /usr/sbin/mysqld
david    15512  0.0  0.0   5304   864 pts/1    R+   10:54   0:00 grep --color=auto mysql

Yukarıdaki çıktı MySQL'in kapatıldığı anlamına mı geliyor? Eğer mysql -uuser -ppasswordkoşarsam hala mysql'ye giriş yapabilirim

Baska öneri?

Yanıtlar:


64

Gerçekten içinde bulunan Sys-V init betiklerini kullanmalısınız /etc/init.d.

Başla:

sudo /etc/init.d/mysql start

Durdurmak:

sudo /etc/init.d/mysql stop

Yapılandırmaları yeniden başlat / yeniden yükle:

sudo /etc/init.d/mysql restart

Çalışma durumunu kontrol et:

sudo /etc/init.d/mysql status

1
Bunu denedim ve aşağıdaki hata iletisini alıyorum: /etc/init.d aracılığıyla init betiklerini çağırmak yerine service (8) yardımcı programını kullanın, örneğin service mysql status '
David

3
@David Bu tek doğru cevap. servicesadece sizin için doğru init.d betiğini arayan küçük bir programdır. Size "hata mesajı" atmasına rağmen sudo /etc/init.d/mysql start/stop, hala işini yapmıştır. Kullanmak service, başlangıç ​​komut dosyalarını kullanmanın sadece "yeni yoludur". Kullanmak için service, sadece bunu terminalde yürütün: service mysql stopveya başlayın.
BloodPhilia

@BloodPhilia, denedim service mysql stopve şu mesajı alıyorum: Rejected send message, 1 matched rules; type="method_call", sender=":1.72" (uid=1000 pid=17673 comm="stop mysql ") interface="com.ubuntu.Upstart0_6.Job" member="Stop" error name="(unset)" requested_reply=0 destination="com.ubuntu.Upstart" (uid=0 pid=1 comm="/sbin/init")). Herhangi bir fikir?
David

2
@David sudo ile kullanmayı denediniz mi? Gibi sudo service mysql stopmi?
BloodPhilia

1
@BloodPhilia. Öneriniz işe yaradı. Açıklamalar için teşekkürler.
David

13

Ubuntu makinelerinde, her iki komutu kullanarak mysql'yi yeniden başlatabilirsiniz:

 1. sudo /etc/init.d/mysql restart

 2. # service mysql restart

Debian'da da. Ama ilk komut benim localhostçalışmamamı sağladı . İle değiştirilmeleri gerekirdi 127.0.0.1. İkincisi bu sorunu yoktu.
MA-Maddin

3

MySQL kapatmak için çalıştırın:

mysqladmin -uuser -ppassword shutdown

kullanıcı ve parola uygun SHUTDOWN ayrıcalığına sahip bir kullanıcı için

Kapatıldığını kontrol etmek için:

ps aux | grep mysql

Herhangi bir işlem ('grep' komutu dışında) görünürse, kapatılmadı.


Talimatlarını takip ettim ve bir çıktı alıyorum. Sorumumu kullanarak sorumu değiştirdim. Doğru yolda olup olmadığımı söyleyebilirim?
David

Sanırım kapanma durur ve ardından otomatik olarak mysql başlar. MySQL'i kalıcı olarak durdurmak için bir komut var mı?
David

@ Otomatik olarak yeniden başlatma, mysqladmin kapanmasının bir davranışı değildir. muhtemelen ubuntu / / etc / in.d.d/mysql davranışıdır? Emin değilim. Sanırım @ gerryk'in cevabı işletim sisteminiz için doğru cevap.
Test

0

Bunu yapmak için kill -9 "PID" komutunu kullanabilirsiniz, ps -a veya top komutlarını çalıştıran MySQL İşlem Kimliğini (PID) kullanabilirsiniz. Ardından ./"main işlemini arayarak tekrar başlatabilirsiniz ".


Merhaba Komut satırı ve MySQL'de yeniyim. Bana terminale ne yazmam gerektiğini tam olarak gösterebilir misin?
David,

5
kill -9, bir sürecin kendisinden sonra temizlenmesine izin vermediğinden, biraz kaba.
gerryk

1
Bunu yapmanı tavsiye etmiyorum. MySQL'in aniden durduğu sırada ne yaptığına bağlı olarak, bazı mutsuz veritabanlarına yeniden başlayabilirsiniz.
Xenoactive

0

Linux kutunuzdaki hizmetleri yönetmek için kullanılan systemctl yardımcı programı varsayılan olarak kullanılabilir. Hizmetleri başlatmak, yeniden başlatmak ve durdurmak için kullanılabilir. Kullanabileceğiniz başka seçenekler var. ödeme systemctl?

systemctl stop mysql
systemctl start mysql

Lütfen bunun neden yardımcı olması gerektiğine dair bazı detaylar ekleyin. Açıklayıcı olmayan cevaplar önerilmez, bu da büyük olasılıkla önemsizliğe neden olur.
kdb
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.