ตรวจสอบว่ามีการติดตั้ง mySql บนเซิร์ฟเวอร์หรือไม่


10

มีวิธีการตรวจสอบว่า mySql ได้รับการติดตั้งบนเซิร์ฟเวอร์ Linux หรือไม่?


หากคุณต้องการลงคะแนนคำถามนี้โปรดบอกฉันว่าเพราะอะไร
Elitmiar

อาจเป็นเพราะคุณไม่ได้ถามคำถามของคุณดี นี่คือวิธีการทำถูกต้อง: catb.org/~esr/faqs/smart-questions.html
pboin

คำตอบ:


12

สมมติว่าคุณกำลังมองหาไบนารี mysql ที่ติดตั้งด้วยแพ็คเกจทั่วไปให้เรียกใช้คำสั่ง:

mysql

หรือ

mysql --version

ถ้ามันกลับมาพร้อมกับการตอบกลับมันถูกติดตั้งถ้ามันบอกว่า "ไม่พบคำสั่ง" ก็จะไม่ถูกติดตั้ง


สมมติว่ามันอยู่ในเส้นทางหรือไดเรกทอรีปัจจุบัน
squillman

สมมติว่ามันไม่ได้แปลว่าใช้ชื่ออื่น! :)
Dave Drager


1

วิธีการเกี่ยวกับrpm -q mysql(Fedora / RedHat)


รอบต่อนาที -qa | grep MySQL อาจจะเป็นที่ปลอดภัยตั้งแต่แพคเกจหลักคือ MySQL เซิร์ฟเวอร์
งู

1

นอกเหนือจากคำแนะนำที่ดีข้างต้นลอง:

locate mysqld_safe

หรือ

ls /etc/init.d | grep mysql

หากคุณคิดว่าอาจใช้งานได้ลอง:

ps waxu | grep mysql

หรือ

netstat -pan | grep mysql

0

ในการแจกจ่ายทุกครั้งที่ฉันรู้จัก MySQL จะติดตั้งไลบรารี่ที่แบ่งใช้สำหรับไคลเอนต์ของมันชื่อ limbysqlclient ที่เหมาะสม คุณสามารถตรวจสอบสิ่งนี้ได้โดยใช้เครื่องมือ ldconfig ซึ่งจะทำการสืบค้นเพื่อดูว่ามีการติดตั้งวัตถุหรือไม่:

ldconfig -p | grep mysqlclient
        libmysqlclient_r.so.15 (libc6) => /usr/lib/libmysqlclient_r.so.15
        libmysqlclient_r.so.14 (libc6) => /usr/lib/libmysqlclient_r.so.14
        libmysqlclient_r.so.12 (libc6) => /usr/lib/libmysqlclient_r.so.12
        libmysqlclient_r.so.10 (libc6) => /usr/lib/libmysqlclient_r.so.10
        libmysqlclient_r.so (libc6) => /usr/lib/libmysqlclient_r.so
        libmysqlclient.so.15 (libc6) => /usr/lib/libmysqlclient.so.15
        libmysqlclient.so.14 (libc6) => /usr/lib/libmysqlclient.so.14
        libmysqlclient.so.12 (libc6) => /usr/lib/libmysqlclient.so.12
        libmysqlclient.so.10 (libc6) => /usr/lib/libmysqlclient.so.10
        libmysqlclient.so (libc6) => /usr/lib/libmysqlclient.so

สิ่งนี้บอกคุณว่ามีโอกาสดีมากที่ MySQL ได้รับการติดตั้ง มันหายากมากที่ใครบางคนจะติดตั้งวัตถุที่ใช้ร่วมกันเท่านั้นโดยไม่ต้องติดตั้งไคลเอนต์อย่างน้อย ตรวจสอบการมีอยู่ของไคลเอ็นต์และเซิร์ฟเวอร์จริง:

root@tower:~ # which mysqld_safe
/usr/bin/mysqld_safe
root@tower:~ # which mysql
/usr/bin/mysql
root@tower:~ #

โปรแกรม `ซึ่ง 'อาจไม่ได้ติดตั้งดังนั้นตรวจสอบผ่าน:

root@tower:~ # which which
/usr/bin/which

หวังว่านี่จะช่วยได้ ขาดการสอบถามตัวจัดการแพคเกจ (ชนิดของยากที่จะทำในสคริปต์ถ้าคุณมีระบบที่ใช้การกระจายที่แตกต่างกัน) ดูเหมือนว่าวิธีที่เชื่อถือได้มากที่จะบอก


-1

วิธีตอบคำถามของคุณง่ายที่สุดและไม่เชื่อเรื่องพระเจ้ามากที่สุดคือ;

find / -name mysql
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.