* Root kullanıcısına bir şifre tanımladığınıza emin olun, MySQL standart kurulumunda size root kullanıcısına bir şifre vermenizi söyler ama buna sizi zorlamaz.
* MySQL sunucusunu root olarak çalıştırmayın.
* Eğer MySQL'le sadece kendi çalıştığı sunucudan bir program bağlantı kuracaksa (çoğu web-veritabanı uygulamasında olduğu gibi), TCP/IP servisini kapatın (--skip-networking). Aynı bilgisayardaki web sunucu MySQL'e bağlanmak için zaten çok daha hızlı olan unix soketlerini kullanacaktır.
* MySQL'in sembolik linklenmiş tabloları kullanmasına izin vermeyin (--skip-symlink seçeneği).
* Tek bir kullanıcının kurabileceği en fazla bağlantı sayısını mysqld'nin max_user_connections seçeneği ile ayarlayabilirsiniz. Böylece bir kullanıcı herhangi bir nedenle çok fazla bağlantı açtığında (programındaki bir hata veya saldırı amacıyla), MySQL zor durumda kalmayacaktır.
* "process" yetkisini kullanıcılara vermeyin. Kendi halinde bir kullanıcının veritabanının o anda yaptığı sorguların neler olduğuna öğrenmeye ihtiyacı olmaması gerekir.
* "file" yetkisini kullanıcılara vermeyin. Aksi takdirde MySQL kullanıcısının hakları ile sunucunuzdaki diledikleri yere yazabilir ve okuyabilirler.
* MySQL sunucunuzun kullandığı DNS'in yanıltılması olasılığına karşı; erişim kısıtlamaları tanımlarken, bilgisayar ismi yerine IP numarası kullanabilirsiniz. O zaman MySQL'i --skip-name-resolve seçeneği ile çalıştırarak sadece IP numaraları ile çalışmasını ve hiç DNS kullanmamasını sağlayabilirsiniz.
* Veritabanı dosyalarının bulunduğu dizine (orn. /usr/local/mysql/var) sadece mysql kullanıcısının okuma/yazma hakkı olduğundan emin olun.
* MySQL'i sakın --skip-grant-tables seçeneği ile çalıştırmayın. Bu, MySQL'in yetkilendirme sistemini iptal ederek çalışmasına ve tüm kullanıcıların veritabanlarına tam erişime sahip olmasına yol açar.