mysql -u rootを打ってパスワードを入力せずにサーバに入れたらやばい。
平文パスワードをデータベースに保存しない。ハッシュ化する。ハッシュ化するときに平文をそのままハッシュ関数に入れると、レインボーテーブルを使ってデータが漏れてしまう可能性があるから、hash(hash(パスワード)+ソルト) 値という風にする。
辞書にかいてあるような単語をパスワードにしない。
ファイアウォールを必ず設定する。
ユーザから送られるデータを信頼しない。例えばSQLインジェクションとかがある。
shell> mysql -u francis -pfrank db_name
じゃなくて、
shell> mysql -u francis -p db_name
Enter password: ********