1. 4つの起動方法:1.mysqld MySQL サーバーを起動します: ./mysqld --defaults-file=/etc/my.cnf --user=root クライアント接続: mysql --defaults-file=/etc/my.cnf または mysql -S /tmp/mysql.sock 2.mysqld_safe MySQLサーバーを起動します: ./mysqld_safe --defaults-file=/etc/my.cnf --user=root & クライアント接続: mysql --defaults-file=/etc/my.cnf または mysql -S /tm/mysql.sock 3.mysql.サーバー cp -v /usr/local/mysql/support-files/mysql.server /etc/init.d/ chkconfig --add mysql.server mysql サーバーを起動します: service mysql.server {start|stop|restart|reload|force-reload|status} クライアント接続: 1および2と同じ 4.mysqld_マルチ mkdir $MYSQL_BASE/data2 cat <<-EOF>> /etc/my.cnf [mysqld_multi] mysqld = /usr/local/mysql/bin/mysqld_safe mysqladmin = /user/local/mysql/bin/mysqladmin ユーザー = mysqladmin パスワード = mysqladmin [mysqld3306] ポート = 3306 ソケット = /tmp/mysql3306.sock pid ファイル = /tmp/mysql3306.pid 外部ロックをスキップ キーバッファサイズ = 16M 最大許容パケット = 1M テーブルオープンキャッシュ = 64 ソートバッファサイズ = 512K ネットバッファ長 = 8K 読み取りバッファサイズ = 256K 読み取りバッファサイズ = 512K myisam_sort_buffer_size = 8M ベースディレクトリ = /usr/local/mysql データディレクトリ = /usr/local/mysql/data [mysqld3307] ポート = 3307 ソケット = /tmp/mysql3307.sock pid ファイル = /tmp/mysql3307.pid 外部ロックをスキップ キーバッファサイズ = 16M 最大許容パケット = 1M テーブルオープンキャッシュ = 64 ソートバッファサイズ = 512K ネットバッファ長 = 8K 読み取りバッファサイズ = 256K 読み取りバッファサイズ = 512K myisam_sort_buffer_size = 8M ベースディレクトリ = /usr/local/mysql データディレクトリ = /usr/local/mysql/data2 終了 #mysql -S /tmp/mysql3306.sock mysql>GRANT SHUTDOWN ON *.* TO 'mysqladmin'@'localhost' ('mysqladmin' によって識別、GRANT オプション付き)。 #mysql -S /tmp/mysql3307.sock mysql>GRANT SHUTDOWN ON *.* TO 'mysqladmin'@'localhost' ('mysqladmin' によって識別、GRANT オプション付き)。 mysql サーバーを起動します: ./mysqld_multi --defaults-file=/etc/my.cnf start 3306-3307 MySQLサーバーをシャットダウンします: mysqladmin shut down 2. mysqlサービスを開始および停止する1. Windowsの場合: 開始: mysqld --console または net start mysql シャットダウン: mysqladmin -u root shutdown または net stop mysql Linuxの場合: 開始: service mysql start 停止: サービス mysql 停止 サービスを再起動します: service mysql restart 3. 権限を割り当てるユーザーを作成する1. 新しいユーザーを作成します。名前: buff、パスワード: buff のユーザーを作成します。 //rootユーザーがMySQLにログインする mysql -uroot -p パスワードを入力してください: //新しいユーザーを作成しますmysql>insert into mysql.user(Host,User,Password) values("localhost","buff",password("buff")); // システム権限テーブルを更新します。mysql>flush privileges; ログインテスト mysql>終了 // ユーザー buff が MySQL にログインします mysql -ubuff -p パスワードを入力してください: マイSQL> // 新しく作成されたユーザー バフが正常にログインしたことを示します ユーザー認証 //rootユーザーがMySQLにログインする mysql -uroot -p パスワードを入力してください: // ユーザー buff のデータベース bluebuff を作成する mysql>データベースbluebuffを作成します。 // ユーザー buff にデータベース bluebuff のすべての権限を許可する mysql>grant all privileges on bluebuff.* to buff@localhost identified by 'buff'; mysql>権限をフラッシュします。 ログインテスト // ユーザー buff がデータベースにログインします mysql -ubuff -p 権限を入力してください: // データベースを表示しますmysql>show databases; 結果は下の図に示されており、ユーザーバフの認証が成功したことを示しています。 5. ユーザーbuffのパスワードを変更する //rootユーザーがMySQLにログインする mysql -uroot -p パスワードを入力してください: // ユーザー buff のパスワードを変更します。mysql>update table mysql.user set password=password('buffer') where User='buff' and Host='localhost'; mysql>権限をフラッシュします。 6. ユーザーの削除 //rootユーザーがMySQLにログインする mysql -uroot -p パスワードを入力してください: // ユーザーバフを削除する mysql>User = 'buff'、Host = 'localhost' の場合、mysql.user から削除します。 mysql>権限をフラッシュします。 7. データベースを削除する mysql>データベースbluebuffを削除します。 4. ユーザーに付与された権限を表示するMySQL では、ユーザーに付与される権限は、グローバル レベルの権限、データベース レベルの権限、テーブル レベルの権限、列レベルの権限、およびサブルーチン レベルの権限に分けられます。 1. グローバルレベル: グローバル権限は、特定のサーバー内のすべてのデータベースに適用されます。これらの権限は mysql.user テーブルに保存されます。 GRANT ALL ON *.* および REVOKE ALL ON *.* は、グローバル権限のみを付与および取り消します。 例: a. テスト アカウント test を作成し、グローバル権限を付与します。mysql> grant select,insert on *.* to test@'%' identified by 'test'; mysql> 権限をフラッシュします。 b. テストに付与された権限を照会します: show grants for test; mysql.user から * を選択して、user='test'\G を指定します。 2. データベースレベル: データベース権限は、特定のデータベース内のすべてのオブジェクトに適用されます。これらの権限は、mysql.db および mysql.host テーブルに保存されます。 GRANT ALL ON db_name.* および REVOKE ALL ON db_name.* は、データベース権限の付与と取り消しのみを行います。例: a. テスト アカウント test を作成し、データベース レベルの権限を付与します。drop user test; MyDB.* に対する select、insert、update、delete 権限を、'test' で識別される test@'%' に付与します。 b. テストに付与された権限を照会します。select * from mysql.user where user='test'\G; -- 権限がないことがわかります。select * from mysql.db where user='test'\G; テストの許可を表示します。 3. テーブルレベル: テーブル権限は、特定のテーブル内のすべての列に適用されます。これらの権限は、mysql.tables_priv テーブルに保存されます。 GRANT ALL ON db_name.tbl_name および REVOKE ALL ON db_name.tbl_name は、テーブル権限のみを付与および取り消します。 例: a. テスト アカウント test を作成し、テーブル レベルの権限を付与します。drop user test; 権限をフラッシュします。 MyDB.kkk のすべての権限を 'test' で識別される test@'%' に付与します。 b. テストに付与された権限を照会します: show grants for test; mysql.tables_priv\G から * を選択します。 4. 列レベル: 列の権限は、特定のテーブル内の単一の列に適用されます。これらの権限は、mysql.columns_priv テーブルに保存されます。 REVOKE を使用する場合は、付与される列と同じ列を指定する必要があります。 例: a. テスト アカウント test を作成し、列レベルの権限を付与します。drop user test; 権限をフラッシュします。 MyDB.TEST1 に対する select (id, col1) を、'test' で識別される test@'%' に許可します。 権限をフラッシュします。 b. テストに付与された権限を照会します。select * from mysql.columns_priv; テストの許可を表示します。 5. サブルーチンレベル: CREATE ROUTINE、ALTER ROUTINE、EXECUTE、および GRANT 権限は、ストアド ルーチンに適用されます。これらの権限は、グローバル レベルまたはデータベース レベルで付与できます。また、CREATE ROUTINE を除き、これらの権限はサブプログラム レベルで付与でき、mysql.procs_priv テーブルに格納されます。 例: a. テスト アカウント test を作成し、サブルーチン レベルの権限を付与します DROP PROCEDURE IF EXISTS PRC_TEST; 区切り文字 // プロシージャ PRC_TEST() を作成します。 -> 開始 -> kkk から * を選択; -> 終了 // 区切り文字 ; 'test' で識別される test@'%' に MyDB.PRC_TEST の実行を許可します。 権限をフラッシュします。 b. テストに付与された権限を照会します: show grants for test; User='test' の場合、mysql.procs_priv から * を選択します。 要約: 1. ユーザーに付与された権限を表示する必要がある場合は、これらの 5 つのレベルから付与された権限を表示する必要があります。上から下へ、または小さいレベルから大きいレベルへ、各レベルに付与されている権限を 1 つずつ確認します。 2. ルーチンの作成、ルーチンの変更、選択、作成、挿入、更新、削除、実行などの権限を付与します。 3. クライアントがサーバーに接続できない場合は、ユーザー テーブル内のホスト項目が '%' であり、承認されているかどうかを確認します。 以下もご興味があるかもしれません:
|
<<: LinuxシステムのAnsible自動運用保守導入方法
URL: http://hostname.com/contextPath/servletPath/p...
1. 公式サイト http://dev.mysql.com/downloads/mysql/ から ...
mysqlに接続できない問題の解決方法を参考までに紹介します。具体的な内容は以下のとおりです。昨日は...
目次ビジネス要件:解決策 1: vuex-persistedstate解決策2: vuex-pers...
序文Linux 環境で作業するエンジニアは、これらの面倒な命令とパラメータのコマンドラインにきっと驚...
目次charとvarcharの違いcharとvarcharの違い上記は、MySQL における cha...
目次1. 公式の足場を使って構築する2. プロジェクトディレクトリ分析3. TypeScript の...
目次NFS サービスの概要NFS とは何ですか? NFS マウントの原則NFS サーバーはデータ転送...
テスト用の MySQL ライブラリのセット。以前使用されていたバージョンは、centos6 のデフォ...
今日は、スライドを使用する原理に似た、Taobao のフロントエンドのマウス ズーム効果に慣れました...
目次プロトタイプチェーンプロトタイプチェーンに基づいてシンプルなJQueryライブラリを実装すること...
<abbr>タグと<acronym>タグは、Web ページに表示される略語と...
実際、XHTML 1.0 は、Transitional DOCTYPE と Strict DOCTY...
<br />Web ページ上の情報は主にテキストベースです。 Web ページでは、フォン...
<a href = "http://" style = "cur...