sql >> データベース >  >> RDS >> Mysql

PHPからMySQLユーザーとデータベースを作成する

    この回答は、OPから提供された新しい情報に基づいて何度か編集されています

    ルートは実際に許可されています 接続元のホストからサーバーに接続するには?エラー文字列がサーバーの正規名を返している場合、「localhost」が127.0.0.1を指していない可能性が非常に高いです:

    これは、サーバーの名前ではなく、「ユーザー'root'@localhost'のアクセスが拒否されました」のようなものをエコーするはずです。

    試してみてください:

    $con = mysql_connect("127.0.0.1","root","pass");
    

    編集 (コメントで提供された詳細情報の後)

    まったく異なるホストから接続している場合は、MySQL [email protected]_hostname_or_ip 接続が許可されており、データベースとユーザーを作成するための適切な権限があります。

    これは、phpmyadmin(MySQLサーバー上)または次のようなクエリを使用してかなり簡単に行うことができます:

    CREATE USER 'root'@'192.168.1.1' IDENTIFIED BY PASSWORD 'secret';
    
    GRANT ALL PRIVILEGES ON * . * TO  'root'@'192.168.1.1' IDENTIFIED BY PASSWORD 'secret' WITH GRANT OPTION MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0 ;
    

    このユーザーに「root」という名前を付けるのではなく、必要なすべてのグローバル権限を持つユーザーを作成することをお勧めします。この例では、簡単にホスト名になる可能性のある192.168.1.1を使用しましたが、DNSが適切に設定されていることを確認してください。 正確に一致するホストを指定します リモートサーバーに接続するとログに表示されます。

    好みに合わせて制限を調整することもできます。 CREATE USERの詳細 構文は、ここにありますGRANT こちら

    編集

    MySQL4を使用している場合-CREATEはオプションではありません。 GRANT(4.1ユーザー管理に関するドキュメント

    編集

    C-Panelを使用している場合は、APIを使用する 。はい、それは癖がありますが、アドホックな回避策よりも、それを使用するものを維持する方が簡単です。多くの成功したアプリケーションは問題なくそれを使用します。他のAPIと同様に、使用するときは変更を常に把握しておく必要があります。



    1. SQL-特定の値を持つ行をカウントする

    2. 外部/リモート接続用にRaspberryPiでMySQLを開くにはどうすればよいですか?

    3. アマゾンLinuxでのpipインストールmysqlclient

    4. SQLLIKEは実際にどのように機能しますか