root として MySQL にログインしていますか? MySQL ルートとしてログインしているときに、「通常の」MySQL ユーザー アカウントに権限を明示的に付与する必要があります。
まず、MySQL データベースのルート アカウントを設定します。
ターミナルタイプで:
mysqladmin -u root password 'password'
MySQL にログインするには、次を使用します。
mysql -u root -p
権限を手動で設定するには、skip-grant-tables オプションを使用してサーバーを起動し、mysql クライアントを開き、mysql.user テーブルおよび/または mysql.db テーブルを手動で更新します。ただし、これは面倒な作業になる可能性があるため、すべての権限を持つアカウントが必要な場合は、次のようにします。
skip-grant-tables
オプションでサーバーを起動します
mysql クライアントを起動します (ユーザー名/パスワードなし)
コマンドを発行する
flush privileges;
これにより、付与テーブルが強制的にロードされます。
このような GRANT コマンドで新しいアカウントを作成します (ただし、ユーザー名とパスワードは使いたいものに置き換えてください。
GRANT ALL on *.* to 'username'@'localhost' identified by 'password';
サーバーを通常モード (skip-grant-tables なし) で再起動し、新しく作成したアカウントでログインします。
このMySQL ドキュメントを参照してください。