MySql データベースは、非商用アプリケーションでは無料で、最もコスト効率の高い「Linux+Apache+PHP+MySql」プラットフォームを構築できるため、中小規模の Web サイトのバックエンド データベースとしては第一の選択肢となります。 MySql を開発するときは、MySql に付属のドキュメントが初心者にとって良い参考になります。 MySql データベースは、非商用アプリケーションでは無料で、最もコスト効率の高い「Linux+Apache+PHP+MySql」プラットフォームを構築できるため、中小規模の Web サイトのバックエンド データベースとしては第一の選択肢となります。 MySql を開発するときは、MySql に付属のドキュメントが初心者にとって良い参考になります。
現在、一般ユーザーの開発環境は Windows または Linux が主流です。Windows では、サービスが起動していることを確認してから使用してください。 mysqlコマンドで起動します。 Linux で起動する場合は、「/etc/rc.d/init.d/mysqld start」コマンドを使用できます。イニシエーターには管理者権限が必要であることに注意してください。
新しくインストールされた MySql には、空のパスワードを持つ root アカウントと匿名アカウントが含まれています。これは、一部の重要なアプリケーションにとって、セキュリティを可能な限り向上させる必要があります。パスワードを設定するには、次のコマンドを使用します。
mysqlを使用します。
User="" のユーザーから削除します。
update User set Password=PASSWORD('newpassword') where User='root';
ユーザーが使用するログイン端末を制限したい場合は、上記の変更を行った後、次のコマンドを使用して、ユーザー テーブルの対応するユーザーのホスト フィールドを更新することができます。ログイン時の同様のコマンド:
mysql -uroot -p;
mysql -uroot -p新しいパスワード;
mysql mydb -uroot -p;
mysql mydb -uroot -pnewpassword;
上記のコマンド パラメータは一般的に使用されるパラメータの一部です。詳細については、ドキュメントを参照してください。ここでの Mydb は、ログインするデータベースの名前です。
開発および実際のアプリケーションでは、ユーザーはデータベースへの接続に root ユーザーを使用するだけでなく、テストに root ユーザーを使用するのは便利ですが、システムに重大なセキュリティ リスクをもたらすため、管理の改善には役立ちません。テクノロジー。アプリケーションで使用されるユーザーに最も適切なデータベース権限を付与します。たとえば、データを挿入するだけのユーザーには、データを削除する権限を与えるべきではありません。 MySql のユーザー管理は、User テーブルを通じて実装されます。新しいユーザーを追加するには、2 つの一般的な方法があります。1 つは、User テーブルに対応するデータ行を挿入し、対応する権限を設定する方法です。 GRANT ユーザー。 GRANT の一般的な使用法は次のとおりです。
mydb.* 上のすべてを "password" で識別されるNewUserName@HostNameに付与します。
*.* の使用を「パスワード」で識別されるNewUserName@HostNameに許可します。
mydb.* の select,insert,update を「パスワード」で識別されるNewUserName@HostNameに許可します。
mydb.TestTable の update,delete を「パスワード」で識別されるNewUserName@HostNameに付与します。
このユーザーに、対応するオブジェクトに対する権限を管理できるようにするには、GRANT の後に WITH GRANT OPTION オプションを追加します。 User テーブルに挿入して追加したユーザーについては、悪意のある人がパスワードを覗き見ることを防ぐために、PASSWORD 関数を使用してパスワード フィールドを更新および暗号化する必要があります。使用されなくなったユーザーはクリアする必要があり、アクセス許可が制限を超えているユーザーは、User テーブルの対応するフィールドを更新するか、REVOKE 操作を使用することによって、すぐにアクセス許可を取り戻すことができます。
グローバル管理権限:
FILE: MySQL サーバー上のファイルの読み取りと書き込み。
PROCESS: 他のユーザーに属するサービス スレッドを表示または強制終了します。
RELOAD: アクセス制御リストの再ロード、ログの更新など。
SHUTDOWN: MySQL サービスをシャットダウンします。
データベース/データテーブル/データ列の権限:
ALTER: 既存のデータテーブルを変更 (列の追加/削除など) およびインデックスを変更します。
CREATE: 新しいデータベースまたはデータテーブルを作成します。
DELETE: テーブルからレコードを削除します。
DROP: データテーブルまたはデータベースを削除します。
INDEX: インデックスを作成または削除します。
INSERT: テーブルにレコードを追加します。
SELECT: テーブルのレコードを表示/検索します。
UPDATE: テーブル内の既存のレコードを変更します。
特別な権限:
ALL: あらゆる操作を許可します (root と同じ)。
使用法: ログインのみが許可され、それ以外は許可されません。
最後に、RedHat9.0 での MySql 操作のデモを行います。
ログインするデータベースの root ユーザーを選択します
[weiwen@weiwenlinux]$mysql -uroot -p
パスワードを入力してください:MyPassword
mysql>データベースmydbを作成します。
クエリは OK、1 行が影響を受ける (0.02 秒)
mysql>mydb を使用します。
データベースが変更されました
mysql>テーブルの作成 TestTable(Id int aut_increment 主キー,
ユーザー名 varchar(16) が null ではありません。
アドレス varchar(255));
クエリは OK、影響を受ける行は 0 (0.02 秒)
mysql>mydb.* 上のすべてを「test」で識別されるtest@localhostに付与します。
クエリは OK、影響を受ける行は 0 (0.01 秒)
mysql>終了
さよなら
[weiwen@weiwenlinux]$mysql mydb -utest -ptest
このうちtest.sqlはviで編集したSQLスクリプトで、その内容は以下の通りです。
TestTable(UserName,Address)values('Tom','shanghai') に挿入します。
TestTable(UserName,Address)values('John','beijing') に挿入します。
TestTable から * を選択します。
編集した SQL スクリプトを実行するには、ソース ファイル名または . ファイル名を使用できます。
上記は初心者向けの簡単な演習です。データベースの専門家になるには、たゆまぬ知識の追求と、常に考え、試し、考え続ける必要があります。