Centos7 MySQL 5.7 のインストール グラフィックとテキストの詳細なチュートリアル

1. MySQL がインストールされているかどうかを確認する

現在のシステムに mysql がインストールされているかどうかを確認します

インストールコマンドを実行する前に、最初にクエリコマンドを実行します

1.CentOS6

rpm -qa|grep mysql

以下のように mysql-libs の古いバージョンのパッケージがある場合:
ここに画像の説明を挿入
最初にアンインストール コマンドを実行してください:rpm -e --nodeps mysql-libs

2.CentOS7

最初にクエリを実行します。rpm -qa|grep mariadb

mariadb が存在する場合は削除します。rpm -e --nodeps mariadb-libs
ここに画像の説明を挿入

2.MySQL をインストールする

1. 圧縮パッケージをサーバーに送信する

ここでは mysql-5.7.16 を使用しています。他のバージョンが必要な場合は、自分でダウンロードできます
。mysql-5.7.16 の圧縮パッケージは次のとおりです。

リンク: https: //pan.baidu.com/s/1zNmv-0Io2BQmp0e3go72Gg
抽出コード:wjud

2.ファイルを解凍します

tar -zxv mysql-5.7.16-1.el7.x86_64.rpm-bundle.tar.gz

3. インストール(順番に実行)

rpm -ivh mysql-community-common-5.7.16-1.el7.x86_64.rpm

rpm -ivh mysql-community-libs-5.7.16-1.el7.x86_64.rpm

rpm -ivh mysql-community-client-5.7.16-1.el7.x86_64.rpm

rpm -ivh mysql-community-server-5.7.16-1.el7.x86_64.rpm

インストールされているバージョンを確認します。mysqladmin --version

mysql ユーザーを表示します。id mysql

ここに画像の説明を挿入

4.MySQL サービスの初期化

次のコマンドを実行して初期化します。

mysqld --initialize --user=mysql

mysql システム ユーザーを使用して、ルート ユーザーのパスワードをセーフ モードで生成し、パスワードを期限切れとしてマークします。ログイン後、新しいパスワードを設定する必要があります。

パスワードを表示:cat /var/log/mysqld.log

ここに画像の説明を挿入

5.初期化パスワードを変更する

MySQL を変更するには、最初に MySQL サービスを開始する必要があります。パスワードは、初期パスワードでログインした後にのみ変更できます。

MySQL サービスを開始します。systemctl start mysqld.service

MySQL サービスを閉じます。systemctl stop mysqld.service

ここに画像の説明を挿入

パスワードを変更する:ALTER USER 'root'@'localhost' IDENTIFIED BY 'root';

ここに画像の説明を挿入

6.MySQL 自動起動

mysql が自動起動するかどうかを確認します (デフォルトの自動起動)

systemctl list-unit-files|grep mysqld.service

ここに画像の説明を挿入
有効になっていない場合は、次のコマンドを実行して自動起動を設定できます

systemctl enable mysqld.service

7. 文字セットの問題を修正する

mysql の使用をテストします。

ここに画像の説明を挿入

エンコーディングの問題があります。理由は、mysql エンコーディング ( show variables like '%character%';) をチェックし、デフォルトのエンコーディングが latin1 であることを確認することです。
ここに画像の説明を挿入

エンコーディングを変更するには、mysql 構成ファイルを変更する必要があります。vi /etc/my.cnf

mysqld の下にエンコード構成の行を追加します。character_set_server=utf8
ここに画像の説明を挿入
保存して終了し、mysql サービスを再起動します。systemctl restart mysqld

生成されたライブラリ テーブルの文字セットはどのように変化しますか?

データベースの文字セットを変更します。alter database mydb character set 'utf8';

データ テーブルの文字セットを変更します。alter table mytbl convert to character set 'utf8';

ここに画像の説明を挿入

8. MySQL へのリモート アクセス

次に、ホスト navicat クライアントを使用して MySQL サービスにアクセスし、次のエラーを報告します: (ファイアウォールがオフになっていることを確認してください)

ここに画像の説明を挿入

理由: デフォルトでは、mysql はリモート接続を許可しません。localhost 接続のみを許可する

埋め込む:select host,user,authentication_string,select_priv,insert_priv from mysql.user;

ここに画像の説明を挿入

解決:

  1. 新しいユーザーを作成します (ここでは省略)
  2. root ユーザーのアクセス権を変更する

9. root リモート アクセスを許可する

認可コマンド:

権限 1、権限 2、... 権限 n をデータベース名.テーブル名に対して、「接続パスワード」で識別されるユーザー名@ユーザー アドレスに付与します。

ユーザーにそのような権限がないことが判明した場合は、新しいユーザーが直接作成されます。

例えば

grant all privileges on *.* to root@'%' identified by 'root';  #授予通过网络方式登录的的root用户,对所有库所有表的全部权限,密码设为root.

ここに画像の説明を挿入

拡大:

現在のユーザー権限を表示:show grants;

現在のユーザーのグローバル権限を表示します。select * from user ;

ユーザーのテーブルの権限を表示します。select * from tables_priv;

権限を取り消すコマンド:

ユーザー名@ユーザーアドレスからデータベース名.テーブル名に対する権限1、権限2、...権限nを取り消します。

データベースとテーブル全体のすべての権限を取り消すには:REVOKE ALL PRIVILEGES ON mysql.* FROM li4@localhost;

mysql ライブラリの下にあるすべてのテーブルを挿入、削除、変更、およびクエリする権限を取り戻します。REVOKE select,insert,update,delete ON mysql.* FROM li4@localhost;

有効にするには、ユーザーは再度ログインする必要があります

10. テスト接続

接続テスト:

ここに画像の説明を挿入

おすすめ

転載: blog.csdn.net/weixin_45277608/article/details/127714913
おすすめ