Linux での MySQL のインストールに関する詳細なチュートリアル

Linux での MySQL のインストールに関する詳細なチュートリアル

1. MySQLサービスをシャットダウンする

# service mysqld stop

2. rpmパッケージがあるかどうかを確認します。MySQLがrpmを使用してインストールされていない場合は、残っていないはずです。残っている場合は削除する必要があります。

構文を確認してください: rpm -qa|grep -i mysql

削除構文: rpm -e <パッケージ名>

依存関係が発生し、削除できない場合は、rpm -e --nodeps <パッケージ名> を使用して、依存関係を確認せずに rpm パッケージを直接削除します。

3. findコマンドを使用して、mysqlファイルがインストールされているかどうかを確認し、必要に応じて削除します。

構文を確認してください: find / -name mysql

削除構文: rm -rf ディレクトリ ファイル (またはファイル)

******(2) mysqlグループとユーザーを作成する******

1. MySQLユーザーを強制的に削除する

削除構文: userdel -r -f mysql (そうでない場合は、mysql が存在しないというメッセージが表示されますが、心配しないでください)

2. グループを追加

追加構文: groupadd mysql

3. MySQLユーザーを追加する

追加構文: useradd -g mysql mysql

******(3) tarballを解凍する******

1. mysql-5.7.12-linux-glibc2.5-x86_64.tar.gzディレクトリに移動します。

2. tarballを解凍する

解凍構文: tar zxvf mysql-5.7.12-linux-glibc2.5-x86_64.tar.gz

解凍後、mysql-5.7.12-linux-glibc2.5-x86_64 という追加ファイルがあります。

このファイルをお気に入りのディレクトリにコピーし、名前を mysql に変更します。コピー中はしばらくお待ちください。

コピー後、mysql ディレクトリに cd して新しいデータ フォルダを作成します。

コピー構文: cp -r mysql-5.7.12-linux-glibc2.5-x86_64 /usr/local/mysql

新しいファイル構文: mkdir data

chmod 770 data

/usr/local/mysql に新しいデータ フォルダを作成し、権限を 770 (drwxrwx---.) に変更します。

[wangh@HavGO mysql]$ sudo mkdir データ
 [wangh@HavGO mysql]$ sudo chmod 770 データ

/usr/local/mysql のユーザーを mysql に設定し、ユーザー グループを mysql に設定します。

[wangh@HavGO ~]$ cd /usr/local/
 [wangh@HavGO ローカル]$ sudo chown -R mysql:mysql mysql

/usr/local/mysql フォルダに移動し、次のコマンドを実行します。

[wangh@HavGO mysql]$ sudo bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data

このコマンドは、ユーザー、mysqlディレクトリ、データディレクトリ(3番目の手順で作成されたデータ)を初期化して作成することを意味します。

実行が完了すると、MySQL の初期パスワードが取得されます。これを最初に保存し、後で初めて MySQL にログインするときに使用する必要があります。

2018-06-30T07:40:21.663544Z 1 [注記] root@localhost: 0hl..Ult.usK の一時パスワードが生成されます

root@localhost:0hl..Ult.usK の一時パスワードが生成されます
0hl..Ult.usK

上記が完了したら、次のコマンドを実行します。

[wangh@HavGO mysql]$ sudo bin/mysql_ssl_rsa_setup --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data

このコマンドは、mysql への SSL セキュア接続 (RSA 暗号化) を設定し、mysql ディレクトリとデータ ディレクトリを指定します。

mysql 操作ログを保存するために、/var/log/ に新しい mysql ログ フォルダーを作成します。

[wangh@HavGO mysql]$ cd /var/log
 [wangh@HavGO ログ]$ sudo mkdir mysql

/usr/local/mysql フォルダで次のコマンドを実行します。

[wangh@HavGO mysql]$ sudo bin/mysqld_safe --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data &

このコマンドをバックグラウンドで実行するには、もう一度 Enter キーを押します。

mysqld_safe スクリプト関数 Baidu

ブートを開始するには、mysql を /etc/init.d に追加します。

[wangh@HavGO mysql]$ sudo cp support-files/mysql.server /etc/init.d/mysql

/etc/my.cnf を設定します (my.cnf は mysql の設定ファイルです)

[wangh@HavGO mysql]$ vim /etc/my.cnf

以下のように構成を変更します。

[mysqld]
 # mysqlのインストールディレクトリをbasedir=/usr/local/mysqlに設定します
 # mysqlデータベースデータの保存ディレクトリを設定します。datadir=/usr/local/mysql/data
 # サーバーが使用するデフォルトの文字セットは、8 ビットの latin1 文字セットです。character-set-server=utf8
 ソケット=/tmp/mysql.sock
 #ソケット=/var/lib/mysql/mysql.sock
 ユーザー=mysql
 [mysqlセーフ]
 ログエラー=/var/log/mysql/mysqld.log
 pidファイル=/var/run/mysqld/mysqld.pid

その他の設定はオプションです

# mysqlクライアントのデフォルトの文字セットをdefault-character-set=utf8に設定します
 ソケット=/var/lib/mysql/mysql.sock
 [mysqld]
 名前解決をスキップ
 #ポート3306を設定 port = 3306
 # 許可される最大接続数 max_connections=200
# 新しいテーブルを作成するときに使用されるデフォルトのストレージエンジン default-storage-engine=INNODB
 小文字テーブル名=1
 最大許容パケット=16M
#パスワードを忘れた場合は、コメントを解除してパスワードなしでログインできます #skip-grant-tables

環境変数の設定

[wangh@HavGO mysql]$ vim /etc/profile

次のコンテンツを追加します。

MYSQL_HOME="/usr/local/mysql" をエクスポートします。
 PATH="$PATH:$MYSQL_HOME/bin" をエクスポートします。

追加したら、保存して終了し、環境変数をすぐに有効にします。

[wangh@HavGO mysql]$ ソース /etc/profile

MySQL がインストールされたので、MySQL サービスを開始します。

[wangh@HavGO など]$ sudo service mysql start

起動が成功したことを表示します。

手順2でmysqlフォルダの名前が「mysql」でない場合、mysqld_safeは「mysqld_safe ファイル/usr/local/mysql/bin/mysqld」というエラーを報告します。

存在しないか実行できません。"

mysqld_safe スクリプトのデフォルトの mysql パスは /usr/local/mysql であるため、現時点では 2 つの解決策があります。mysqld_safe 内のすべての /usr/local/mysql ディレクトリを実際のインストール ディレクトリに変更します。

または、実際のインストールディレクトリへのリンクを/usr/local/mysqlに作成します。

 mkdir /var/lib/mysql
 mysql_install_db --user=mysql --ldata=/var/lib/mysql/

mysql サービスが起動したら、mysql に入るコマンドを入力します。パスワードは以前に取得した初期パスワードです。

[wangh@HavGO など]$ mysql -u root -p

初期パスワードを入力してEnterを押します

新しいパスワードを設定してください: jkl12345784

新しいパスワードで再度ログインすると、mysql を使用できるようになります。

ログイン後すぐにルートパスワードを変更します。

mysql> 'admin' によって識別されるユーザー 'root'@'localhost' を変更します。
 クエリは正常、影響を受けた行は 0 行 (0.00 秒)

Your_password は設定した新しいパスワードです。新しいパスワードは、大文字、小文字、数字、句読点を含む 6 文字以上で強力なパスワードにする必要があります。

'admin' によって識別される 'root'@'%' に、GRANT オプションを使用して *.* のすべての権限を付与します。
 権限をフラッシュする
 ps 補助 |grep httpd

要約する

上記は、編集者が紹介した Linux で MySQL をインストールする方法に関する詳細なチュートリアルです。皆様のお役に立てれば幸いです。ご質問がある場合は、メッセージを残してください。編集者がすぐに返信します。また、123WORDPRESS.COM ウェブサイトをサポートしてくださっている皆様にも感謝申し上げます。

以下もご興味があるかもしれません:
  • Ubuntu 18.04 (Linux) に MySQL をインストールする方法
  • Centos7 (linux+nginx+php7.1+mysql5.7) で yum を使用して lnmp をインストールするチュートリアル
  • LinuxでのMySQLのインストール手順
  • Linux での mysql および mysql.sock のインストールに関する問題
  • Linux に MySQL をインストールする方法 (yum とソース コードのコンパイル)
  • Linux に MySql 5.7.21 をインストールするための詳細な手順
  • Linux システムで MySQL データベースの解凍バージョンをインストールして構成する方法

<<:  Linux での Nginx 監視の問題

>>:  Vueはテーマ切り替えのための複数のアイデアを実装します

推薦する

CentOS 8 に MySql をインストールしてリモート接続を許可する方法

ダウンロードしてインストールします。まず、システムに MySQL または MariaDB があるかど...

Navicat for SQLite で中国語データを CSV にインポートする方法

この記事では、参考までに、csv中国語データをNavicat for SQLiteにインポートする具...

JavaScript DOMContentLoaded イベントのケーススタディ

DOMContentLoaded イベント文字通り、DOM がロードされた後に実行されます。 win...

MySQL ユーザー権限管理の実装

1. MySQL の権限の概要MySQL には、権限を制御する 4 つのテーブルがあります。user...

CentOS7.4 起動時の緊急モードへようこそメッセージに対する解決策

今日は仮想マシンを使って実験をしました。システムをインストールし、いくつかのオプションを最適化した後...

テーブルセルの幅tdの設定は無効であり、内部コンテンツによって常に引き伸ばされます

テーブルページを作成するときに、td に設定された幅が無効になることがあります。td の幅は常に内部...

一般的な docker コマンドの概要 (推奨)

1. 要約:一般的に、次のカテゴリに分類できます。 Docker 環境情報 — docker [i...

TypeScript で時間を費やした場所の概要

TS で時間を過ごした場所をいくつか記録します。 (まず、文句を言わせてください。stackover...

CSS グリッドレイアウトで列にアイテムを埋め込む方法

n 個のアイテムがあり、これらのアイテムをグリッド レイアウトの列に並べ替える必要があるとします。列...

JavaScriptで配列を作成する方法の詳細な説明

目次JavaScript で配列を作成する配列の使用配列を分割文字列に変換する配列に要素を追加する配...

CSSは2つの要素をブレンドする効果(スティッキー効果)を実現します。

数年前、Taobaoのモバイル版の左下隅に面白い丸いボタンがあったことを覚えています。それをクリック...

VUEプロジェクトでXSS攻撃に遭遇した実体験

目次序文原因を発見するカスタムフィルタリングルール要約する序文インターネットの急速な発展に伴い、情報...

Vue 3 での watch と watchEffect の新しい使い方

目次1. 時計の新しい使い方1.1. ウォッチの使用構文1.2. 複数の属性値を監視する1.3. 参...

React スキャフォールディングの構築方法を学ぶ

1. フロントエンドエンジニアリングの複雑さいくつかの小さなデモ プログラムを開発するだけであれば、...