ขณะนี้ฉันกำลังพยายามทำการล้างและติดตั้ง MySQL ใหม่โดยอัตโนมัติบน Ubuntu (สำหรับคนจรจัด)อย่างไรก็ตาม ฉันพบปัญหาหลายอย่างเกี่ยวกับสิ่งนั้น
นี่คือสิ่งที่ฉันมี:
# ถอนการติดตั้ง MySQL เวอร์ชันเก่า
sudo systemctl หยุด mysql
sudo apt-get ลบ mysql-* -y
sudo apt-get autoremove -y
sudo apt-get autoclean -y
sudo rm -rf /etc/mysql /var/lib/mysql /var/log/mysql
# ...
#ทำอย่างอื่น.
# ...
# ติดตั้ง MySQL ล่าสุด ดู
# https://gist.github.com/kpietru/a3cb08ee074a4418795a
MYSQL_PASSWORD="รูท"
ส่งออก MYSQL_PASSWORD="$MYSQL_PASSWORD"
sudo คาดหวัง -c '
วางไข่ apt-get install -y mysql-server
คาดหวัง "*รหัสผ่าน* ผู้ใช้:"
ส่ง "$env(MYSQL_PASSWORD)\r"
คาดหวัง "*รหัสผ่าน* ผู้ใช้:"
ส่ง "$env(MYSQL_PASSWORD)\r"
คาดหวัง "\r"
ส่ง "ป้อน\r"
มีปฏิสัมพันธ์'
sudo systemctl เปิดโปง mysql.service
sudo บริการ mysql เริ่มต้น
mysql -- รุ่น
ใช้งานได้และกล่อง Vagrant ของฉันโหลดได้ดี อย่างไรก็ตาม เมื่อฉันพยายามใช้ MySQL ดังนี้:
mysql -uroot - รูต
ฉันได้รับข้อความแสดงข้อผิดพลาดเกี่ยวกับซ็อกเก็ต (ดู https://stackoverflow.com/questions/11990708/error-cant-connect-to-local-mysql-server-through-socket-var-run-mysqld-mysq). ฉันไม่ต้องการแก้ไขข้อผิดพลาดที่นี่ ฉันต้องการให้สคริปต์ก่อนหน้าทำงานได้อย่างถูกต้อง ดังนั้นฉันจะไม่ลงหลุมกระต่ายของการแก้ไขข้อผิดพลาดซ็อกเก็ต
สัญชาตญาณแรกของฉันคือการใช้ sudo apt-get purge -y mysql-*
แทน ลบ
แต่แล้วฉันก็ต้องตอบกลับพร้อมท์โดยอัตโนมัติด้วย คาดหวัง
. ฉันพยายามทำอย่างนั้นกับ คาดหวังอัตโนมัติ
, แต่ คาดหวัง
สคริปต์ที่สร้างขึ้นดูเหมือนจะไม่ทำงาน
พวกคุณช่วยฉันได้ไหม มีอะไรอีกบ้างที่ฉันสามารถลองได้อีก
ขอบคุณล่วงหน้า & ไชโย