ติดตั้ง mysql บน ubuntu

จาก Wiki Opensource

บันทึกนี้ปรับปรุงล่าสุดเมื่อวันที่ 8-3-2553

ดูแลโดย WIPAT


  • ทดสอบกับ ubuntu 8.04


  1. ติดตั้งด้วยคำสั่ง sudo apt-get install mysql-server

    หากได้หน้าต่าง Configuring mysql-server-5.0  มีข้อความแจ้งให้ใส่รหัสผ่าน
    ในตอนนี้ยังไม่ต้องใส่อะไร ให้เลื่อนไปเลือก <Ok>
    ระบบจะทำการติดตั้งต่อไปจนเสร็จ

  2. สั่งให้ mysql server ทำงานด้วยคำสั่ง  sudo /etc/init.d/mysql start

  3. เพื่อความปลอดภัยให้รีบแก้ไขรหัสผ่านของ root ของ mysql
    สมมติว่าต้องการให้รหัสของผู้ใช้ root มีรหัสผ่านว่า mysqldroot
    ตัวอย่างนี้ใช้คำสั่งว่า mysqladmin -uroot password mysqldroot

  4. ตัวอย่างคำสั่งในการสร้าง database ชื่อว่า testdatabase คือ
    mysql -uroot -pmysqldroot -e "CREATE DATABASE testdatabase CHARACTER SET 'UTF8';"

  5. ตัวอย่างคำสั่งในการลบ database ที่เคยสร้างไว้ชื่อ testdatabase ทิ้งไปคือ
    mysql -uroot -pmysqldroot -e "DROP DATABASE testdatabase;"

  6. ตัวอย่างกำหนดสิทธิ์การใช้ database ชื่อ testdatabase ให้แก่ user ชื่อ mamamysql โดยมีรหัสผ่านว่า mamapass ใช้คำสั่งคือ
    mysql -uroot -pmysqldroot -e "grant all privileges on testdatabase.* to 'mamamysql'@'localhost' identified by 'mamapass';"

  7. การ reset root password ของ mysql server ทำดังนี้
    ปิดการทำงานของ mysql ด้วยคำสั่ง sudo /etc/init.d/mysql stop
    สั่งให้ mysql ทำงานใหม่ด้วยคำสั่ง sudo mysqld --skip-grant-tables &
    ตั้งค่ารหัสผ่านของ root ใหม่ ตัวอย่างนี้ตั้งว่า mysqldroot ให้ใช้คำสั่งว่า mysql -u root mysql -e "UPDATE user SET Password=PASSWORD('mysqldroot') WHERE User='root';"
    แล้วตามด้วยคำสั่ง mysql -u root mysql -e "flush privileges;"
    เสร็จแล้วให้ปิด mysql sever ด้วยคำสั่ง kill -9 $(cat /var/run/mysqld/mysqld.pid)

  8. การถ่ายโอน database ภาษาไทย 8 bit ไปเป็น ภาษาไทย UTF-8 ทำดังนี้
    สมมติว่ามี database ภาษาไทย 8 bit ชื่อว่า my-8bit-database
    ให้ backup database ของเดิมที่เป็นภาษาไทย 8 bit มาเก็บไว้ในแฟ้ม /tmp/mybackup.sql ก่อนด้วยตัวอย่างคำสั่ง
    mysqldump -u root -pmysqldroot --default-character-set=latin1 --skip-set-charset my-8bit-database | sed "s/DEFAULT CHARSET=latin1//" > /tmp/mybackup.sql

    สร้างแฟ้ม database ภาษาไทย UTF-8 ชื่อ my-utf8-database ด้วยตัวอย่างคำสั่ง
    mysql -uroot -pmysqldroot -e "CREATE DATABASE my-utf8-database CHARACTER SET 'UTF8';"

    แล้วนำข้อมูลที่สำรองใน /tmp/mybackup.sql ไปใส่ restore คืนพร้อม upgrade เป็นภาษาไทย UTF-8 ในแฟ้ม my-utf8-database ด้วยคำสั่งประมาณว่า
    mysql -u root -pmysqldroot --default-character-set=tis620 my-utf8-database < /tmp/mybackup.sql

    ทำแค่นี้ก็จะได้ข้อมูล database ที่เป็นภาษาไทยแบบ UTF-8 ใช้งานแล้ว

  9. หากต้องการเครื่องมือจัดการ mysql แบบ graphic ให้ติดตั้งโปรแกรม  mysql-query-browser
    ด้วยคำสั่ง  sudo apt-get install mysql-query-browser
    เสร็จแล้วเรียกใช้งานด้วยคำสั่ง  mysql-query-browser ได้เลย

  10. หากต้องการใช้เครื่องมือจัดการ mysql แบบ graphic จากภายนอกเครื่อง Server เช่น MySQLYog-Community Edition
    หรือจะติดตั้ง phpmyadmin บน Web Server คนละเครื่องกับ MySQL Server ต้องแก้ไขไฟล์
    /etc/mysql/my.cnf
    แล้ว comment จากบรรทัดที่เขียนว่า
    bind-address = 127.0.0.1
    ให้เป็น
    #bind-address = 127.0.0.1

    แล้ว restart mysql
    sudo /etc/init.d/mysql restart