2012-03-25 26 views
37

Làm thế nào tôi có thể khởi động mysql mỗi lần khởi động hệ thống? Tôi cần rằng trong một máy chủ chuyên dụng (ubuntu distro) trong đó tôi có blog của tôi, nhưng mỗi khi máy chủ đi xuống, trên khởi động mysql được dừng lại. Btw tôi chỉ có thể sử dụng dòng lệnh.Làm thế nào để mysql bắt đầu tự động? (chỉ dành cho linux-cli)

+0

https://serverfault.com/questions/232046/how-to-automatically-start-mysql-after-server-restart-centos-other-distros – n611x007

Trả lời

32

Bạn có thể làm điều đó bằng cách sử dụng sysv-rc-conf, trên debian dựa bạn có thể cài đặt nó với sudo apt-get install sysv-rc-conf sau đó bạn có thể chọn những gì bắt đầu khởi động với chữ X đơn giản trên tên của deamon, tất cả thông qua dòng lệnh

enter image description here

+1

Một lần nữa không làm việc .. Tôi đánh dấu X mysql trong tất cả các runleves cộng với S nhưng khi khởi động lại dịch vụ mysql status nói mysql stop/waiting. – Filippos

+3

Xin lỗi nhưng những con số này có ý nghĩa gì ở hàng trên cùng? –

+1

Từ Ubuntu 12.10 trên, 'sysv-rc-conf' là thay thế cho' chkconfig' được đề xuất bên dưới. Nó cũng cho phép bạn sử dụng các lệnh thay vì giao diện ncurses, trong trường hợp này: 'sysv-rc-conf mysql on'. – tanius

46

update-rc.d cho phép thiết lập các liên kết init script trên hệ thống Ubuntu và Debian Linux để kiểm soát dịch vụ nào được chạy bởi init khi nhập các runlevel khác nhau. Nó sẽ có thể thêm mysql vào danh sách các dịch vụ chạy lúc khởi động:

sudo update-rc.d mysql defaults 

Nếu sau này bạn muốn vô hiệu hóa chạy mysql trên bootup:

sudo update-rc.d mysql remove 
+0

Tôi nhận được các lỗi sau: http://pastebin.com/vTFDEAx4 – Filippos

22

Chạy lệnh sau để xem mysql của bạn tình trạng hiện tại:

/sbin/chkconfig mysqld --list 

nó sẽ trả về một dòng như dưới đây:

mysqld    0:off 1:off 2:off 3:off 4:off 5:off 6:off 

để làm cho mysql bắt đầu mỗi khi hệ thống khởi động, gõ như sau:

sudo /sbin/chkconfig mysqld on 

Kết quả bây giờ từ '--list' là:

mysqld   0:off 1:off 2:on 3:on 4:on 5:on 6:off 
+0

Câu trả lời hay. Đơn giản và hiệu quả. – Damo

+0

Máy chủ CentOS của tôi luôn khởi động mysqld khi khởi động. Nhưng kể từ hôm qua nó không còn nữa. Nhưng giải pháp này đã giúp tôi. Cảm ơn rất nhiều! – unlimited101

+0

Đã cố gắng áp dụng giải pháp này, nhưng khi hệ thống được khởi động lại và tôi kiểm tra trạng thái dịch vụ mysql của mình, nó nói: 'MySQL không chạy, nhưng tệp PID tồn tại'. Tôi biết đây là một chủ đề cũ nhưng chúng tôi đang chạy ra khỏi các tùy chọn. Bằng cách này, đầu ra lệnh '/ sbin/chkconfig mysql --list' có vẻ công bằng. Chúng tôi đã thử tất cả các câu trả lời trong trang này nhưng thật đáng tiếc là không có may mắn. – JorgeGRC

3

tôi đã cùng một vấn đề, vì vậy tôi đã kiểm tra làm thế nào tôi bị vô hiệu hóa nó ở nơi đầu tiên:

https://askubuntu.com/questions/138487/how-to-keep-apache-and-mysql-from-starting-automatically

Kiểm tra /etc/init/mysql.conf của bạn để chắc chắn rằng bạn không bắt đầu nhận xét (như tôi đã làm).

# MySQL Service 

description  "MySQL Server" 

author   "Mario Limonciello <[email protected]>" 

start on runlevel [2345] 
stop on starting rc RUNLEVEL=[016] 
... 

Khởi động lại máy và hoạt động.

$ sudo service mysql status 
mysql start/running, process 972 
7

Không có câu trả lời nào được trợ giúp. Cuối cùng, chkconfigupdate-rc.d không hoạt động với MySQL trên máy của tôi.

Giải pháp, tôi đã có một tập tin /etc/init/mysql.override trong đó có

manual 

tôi chỉ xóa tập tin đó

$ sudo rm /etc/init/mysql.override 
4

Xóa /etc/init/mysql. ghi đè đã thực hiện công việc trong trường hợp của tôi (HostEurope VPS với Ubuntu 12.04)

1

Một nơi khác để tìm kiếm manh mối như những gì được và không bắt đầu vào lúc khởi động ...

/etc/init.d/.depend.start (và bạn thân của mình lúc tắt máy thời gian, .depend.stop)

Dưới đây là biết thêm một chút http://www.pyenet.co.nz/2-202-1-customising-system-startup-and-boot-processes/

tôi đã có 2 máy chủ - sau khi khởi động, 1 sẽ có mysql chạy, người kia không quá nhiều.

Trên hộp nơi mysql đã bắt đầu vào lúc khởi động:

  • chkconfig thậm chí còn không được cài đặt
  • có zero liên kết từ bất kỳ script trong /etc/rc?.d/* trở lại/etc/init.d/mysql
  • NHƯNG ... /etc/init.d/.depend.start chứa:

    TARGETS = halt apache2 umountfs umountnfs.sh sendsigs networking umountroot reboot killprocs unattended-upgrades urandom mysql mdadm dns-clean landscape-client pppd-dns sysstat rsync sudo postfix single grub-common ondemand rc.local 
    INTERACTIVE = apache2 
    postfix: mysql 
    single: killprocs dns-clean pppd-dns 
    grub-common: apache2 unattended-upgrades postfix mysql mdadm dns-clean landscape-client pppd-dns sysstat rsync sudo 
    ondemand: apache2 unattended-upgrades postfix mysql mdadm dns-clean landscape-client pppd-dns sysstat rsync sudo 
    rc.local: apache2 unattended-upgrades postfix mysql mdadm dns-clean landscape-client pppd-dns sysstat rsync sudo 
    

Khi tôi chỉ đơn giản là sao chép tập tin này trên máy chủ vấn đề, và khởi động lại, mysql đã được & chạy.

0

Với Debian 9, tôi đã cài đặt MySQL ngày hôm nay và nhập "khởi động lại" và mysqld được khởi động lại tự động. Cũng khởi động lại từ bảng điều khiển VPS của tôi, mysqld khởi động lại tự động. Trong ngắn hạn, nếu bạn có Debian 9, không có gì thêm để làm, nó chỉ hoạt động.

Các vấn đề liên quan