64 ビット CentOs7 ソース コードのインストール mysql-5.6.35 プロセス共有

64 ビット CentOs7 ソース コードのインストール mysql-5.6.35 プロセス共有

インストールプロセス中に問題が発生しないように、まず依存パッケージをインストールします。

[root@bogon liuzhen]# yum -y install gcc gcc-c++
[root@bogon liuzhen]# yum -y インストール cmake
[root@bogon liuzhen]# yum -y インストール ncurses-devel
[root@bogon liuzhen]# yum -y autoconf をインストールします
[root@bogon liuzhen]# yum -y インストール perl perl-devel
上記の依存パッケージのインストールは1行で実行することもできます。

[root@bogon liuzhen]# yum -y インストール gcc gcc-c++ cmake ncurses-devel autoconf perl perl-devel

MySQL ソースコードのダウンロードアドレス: https://dev.mysql.com/downloads/mysql/5.6.html#downloads

ソースパッケージのアドレス: https://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.35.tar.gz

MySQLのインストールディレクトリとデータ保存ディレクトリを作成する

[root@bogon liuzhen]# mkdir /usr/local/mysql
[root@bogon liuzhen]# mkdir /usr/local/mysql/data

mkdir フォルダを作成

-m: 新しく作成されたディレクトリのアクセス権限を設定する

-p: パス内の一部のディレクトリがまだ存在しない場合は、システムが自動的にそれらのディレクトリを作成します。

ユーザーとユーザーグループを作成する

[root@bogon liuzhen]# グループ追加 mysql
[root@bogon liuzhen]# useradd -r -g mysql mysql

useradd コマンドは、ユーザー アカウントとユーザーのホーム ディレクトリを作成するために使用されます。このコマンドには、最終ユーザーが使用できる権限があります。新しいユーザーのパスワードが空です

-g: ユーザーが属する開始グループを指定します。

-d: ユーザーがログインするときの開始ディレクトリを指定します。

-s: ログイン後にユーザーが使用するシェルを指定します。 -s /sbin/nologinはログインシェルを禁止します

-gの後の最初のmysqlはグループ名で、2番目のmysqlは新しく作成されたユーザー名です。新しく作成されたユーザー情報は/etc/passwdファイルにあります。

現在のフォルダにファイルを解凍します

tar バックアップ、圧縮と解凍、Linux コマンド、ツール

-z: は、tarball が gzip で圧縮されていることを示します。そのため、解凍するには gunzip を使用する必要があります。

-x : tarballからファイルを抽出する

-v : 詳細情報を表示

-f xxx.tar.gz: 処理するファイルがxxx.tar.gzであることを指定します

tar.gz を tar zxvf で解凍し、tar.bz2 を tar jxvf で解凍します。

インストールを開始

[コード]
[root@bogon liuzhen]# tar -zxvf mysql-5.6.35.tar.gz
[root@bogon liuzhen]# cd mysql-5.6.35
[root@bogon mysql-5.6.35]# cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DINSTALL_DATADIR=/usr/local/mysql/data \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DEXTRA_CHARSETS=すべて\
-DENABLED_LOCAL_INFILE=1
[root@bogon mysql-5.6.35]# make && make install

CMAKE パラメータの説明:

-DCMAKE_INSTALL_PREFIX=/usr/local/mysql //デフォルトのインストールディレクトリ

-DINSTALL_DATADIR=/usr/local/mysql/data //データベース保存ディレクトリ

-DDEFAULT_CHARSET=utf8 //utf8文字を使用する

-DDEFAULT_COLLATION=utf8_general_ci //文字をチェック

-DEXTRA_CHARSETS=all //すべての拡張文字セットをインストールします

-DENABLED_LOCAL_INFILE=1 //ローカルからデータをインポートできるようにする

-DMYSQL_USER=mysql

-DMYSQL_TCP_PORT=3306

CMAKEの詳細な設定については、MySQL公式サイトを参照してください。

注記:

インストールが失敗し、再コンパイルする場合は、古いオブジェクト ファイルとキャッシュ情報をクリアする必要があります。

[root@bogon mysql-5.6.35]# クリーンにする
[root@bogon mysql-5.6.35]# rm -f CMakeCache.txt
[root@bogon mysql-5.6.35]# rm -rf /etc/my.cnf

ディレクトリ権限の設定

[root@bogon liuzhen]# cd /usr/local/mysql
[root@bogon mysql]# chown -R mysql:mysql .
[root@bogon mysql]# chown -R mysql:mysqlデータ

chown コマンドは、ファイルまたはディレクトリの所有者とグループを変更します。

-R: 指定されたディレクトリとそのすべてのサブディレクトリおよびファイルの所有者を再帰的に変更します。

-v : chown コマンドによって行われた作業を表示します。

システムサービスにmysqlスタートアップサービスを追加する

[root@bogon liuzhen]# cd /usr/local/mysql
[root@bogon mysql]# cp サポートファイル/my-default.cnf /etc/my.cnf

基本テーブルを作成します。

[root@bogon liuzhen]# cd /usr/local/mysql
[root@bogon mysql]# ./scripts/mysql_install_db --user=mysql

環境変数の設定

[root@bogon liuzhen]# vi /etc/profile

下部に次の2つの値を追加します

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

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

保存する

変更したプロファイルファイルをすぐに有効にする

[root@bogon liuzhen]# ソース /etc/profile

起動を制御できるサービスのフォルダに mysql を追加し、サービスによって制御できるサービス名である mysql という名前を付けます。これで、service mysql start を使用して mysql の起動を制御できるようになります。

/etc/init.d は /etc/rc.d/init.d へのリンクです。/etc/init.d にファイルを追加すると、同じファイルが /etc/rc.d/init.d にも追加されます。

[root@bogon liuzhen]# cd /usr/local/mysql/
[root@bogon mysql]# cp support-files/mysql.server /etc/init.d/mysql

chkconfig コマンドは主に、システム サービスの実行レベル情報を更新 (開始または停止) および照会するために使用されます。 chkconfig は、サービスを直ちに自動的に無効化または有効化するのではなく、単にシンボリック リンクを変更するだけであることに注意してください。

--add: 指定されたシステム サービスを追加して、chkconfig コマンドで管理できるようにし、同時に関連データをシステム起動説明ファイルに追加します。サービススクリプトは/etc/ini.d/ディレクトリに保存する必要があります。

ブートコマンドによって管理されるサービスリストにmysqlサービスを追加します。

[root@bogon liuzhen]# chkconfig --add mysql
起動時にmysqlサービスを自動的に開始する

on: サービスにはレベル制限があります。詳細については chkconfig を確認してください。

[root@bogon liuzhen]# chkconfig mysql オン

次のコマンドを使用してmysqlを起動できます。

[root@bogon liuzhen]# サービス mysql を開始
mysqlサービスを停止する

[root@bogon liuzhen]# サービスmysqlを停止
MySQLサービスを再起動する

[root@bogon liuzhen]# サービスmysqlを再起動します

次の 2 つのコマンドは同じ効果があります。

systemctl [stop|start|restart] サービス名

サービス サービス名 [停止|開始|再起動]

次のプロンプトで Enter キーを押して新しいパスワードを設定します。

[root@bogon liuzhen]# mysqladmin -u root パスワード
新しいパスワード:
新しいパスワードを確認:
[root@bogon liuzhen]#

MySQLに接続する

[root@bogon mysql]# mysql -u root -p
パスワードを入力してください:
MySQL モニターへようこそ。コマンドは ; または \g で終わります。
MySQL接続IDは2です
サーバーバージョン: 5.6.35 ソース配布

Copyright (c) 2000, 2016, Oracle およびその関連会社。無断複写・転載を禁じます。

OracleはOracle Corporationおよびその関連会社の登録商標です。
その他の名称は各社の商標である場合があります。
所有者。

ヘルプを表示するには、「help;」または「\h」と入力します。現在の入力ステートメントをクリアするには、「\c」と入力します。

マイSQL>

ルート用のリモート接続機能を追加

mysql>mysql を使用します。
mysql>desc ユーザー;
mysql> GRANT ALL PRIVILEGES ON *.* TO root@"%" IDENTIFIED BY "root"; // リモート接続機能を root に追加します。
mysql>ユーザーを更新し、Password = password('xxxxxx') を設定します。User='root';
mysql>User='root' の場合、ホスト、ユーザー、パスワードをユーザーから選択します。
mysql>flush privileges; //権限を更新
mysql>exit //終了

次の4つのGRANTの例

192.168.155.1 のユーザー user1 に、データベース dbname のテーブル tablename に対する SELECT、INSERT、UPDATE、DELETE、CREATE、および DROP の権限を割り当て、パスワードを 123456 に設定します。

ALTER など、テーブル操作には他にも多くの権限があります。

mysql> 'user1'@'192.168.155.1' IDENTIFIED BY '123456' に SELECT、INSERT、UPDATE、DELETE、CREATE、DROP ON dbname.tablename の権限を許可します。
データベース dbname 内のすべてのテーブルに対するすべての操作の権限を 192.168.155.1 のユーザー user2 に割り当て、パスワードを 123456 に設定します。

mysql> 'user2'@'192.168.155.1' ('123456' によって識別) に dbname.* のすべての権限を付与します。
192.168.155.1 のユーザー user3 に、すべてのデータベース内のすべてのテーブルに対するすべての操作の権限を割り当て、パスワードを 123456 に設定します。

mysql> '123456' によって識別される 'user3'@'192.168.155.1' に *.* のすべての権限を付与します。
ローカル ユーザー user4 に、すべてのデータベース内のすべてのテーブルに対してすべての操作を実行する権限を割り当て、パスワードを 123456 に設定します。

mysql> '123456' によって識別される 'user4'@'localhost' に *.* のすべての権限を付与します。

ファイアウォールのmysql3306ポートへの外部アクセスを有効にする

CentOS を 7 にアップグレードした後、元の iptables の代わりに firewalld が使用されるようになりました。以下は、firewalldを使用してLinuxポートを開く方法の記録です。

--zone : スコープ、ネットワーク ゾーンはネットワーク接続の信頼レベルを定義します。これは 1 対多の関係です。つまり、接続は 1 つの領域のみの一部となり、領域は複数の接続に使用できます。

--add-port : ポートと通信プロトコルを追加します。形式は、ポート/通信プロトコル、プロトコルは tcp または udp です。

--permanent : 永続的な効果。このパラメータがないと、システムの再起動後にポート アクセスが失敗します。

[root@bogon /]# ファイアウォール-cmd --zone=public --add-port=3306/tcp --permanent
ファイアウォールを再起動する

[root@bogon /]# ファイアウォール-cmd --reload
-----------------------------------------------------------------------

ルートパスワードを忘れた場合の変更方法

mysqlサービスを停止するか、コマンドsystemctl stop mysqlを実行します。

[root@bogon /]# サービスmysql停止
/usr/local/mysql と入力する

[root@bogon /]# cd /usr/local/mysql/
mysqld_safe 経由で mysql を起動し、mysql の起動時に grant-tables 認可テーブルを起動しないでください。

[root@bogon mysql]# ./bin/mysqld_safe --basedir=/usr/local/mysql \
--datadir=/usr/local/mysql/data \
--skip-grant-tables &
mysqlにログイン

[root@bogon /]# mysql -u ルート mysql
ルートパスワードを変更する

mysql>UPDATE user SET password=PASSWORD("new_password") WHERE user='root';
権限の更新

mysql> 権限をフラッシュします。
MySQLを終了する

mysql>終了;

以下もご興味があるかもしれません:
  • Centos7でmysqlを使用してMariaDBを再起動する
  • Centos7.3 で mysql5.7.18 をインストールして初期パスワードを変更する方法
  • Linux centos7 環境での MySQL インストール チュートリアル
  • CentOS7 で MySQL データベースにリモート接続できない理由と解決策
  • Centos7で指定したmysqlユーザーのパスワードを変更する方法の詳細な説明
  • CentOs7.x に MySQL をインストールするための詳細なチュートリアル
  • MySQL 5.7.17 のインストールと設定方法のグラフィックチュートリアル (CentOS7)
  • Alibaba Cloud CentOS7 で Apache+PHP+MySQL 環境を構築
  • Centos7 で yum を使用して Mysql5.7.19 をインストールする詳細な手順
  • Centos7.4 システムに yum ソースから mysql 5.6 をインストールする

<<:  ネイティブ js でカスタム難易度のマインスイーパ ゲームを実装する

>>:  Dockerコンテナでアプリケーションサービスを自動的に起動する方法の例

推薦する

Mysql InnoDBとMyISAMの違いの分析

MySQL は、myisam、innodb、memory、archive、example など、多く...

Linuxテキスト処理ツールの詳細な説明

1. /etc/passwdファイル内のデフォルトシェルが/sbin/nologinではないユーザー...

HTMLタグの説明

HTMLタグの説明1. HTMLタグタグ: !DOCTYPE説明: HTML ドキュメントが準拠する...

SQL ストアド プロシージャの取得、データ取得、プロセス分析

この記事は主に、SQL のストアド プロシージャから返されたデータを取得するプロセスの分析を紹介しま...

Vueコンポーネントドキュメントを自動生成する方法を分析する

目次1. 現状2. コミュニティソリューション2.1 事業レビュー3. 技術的ソリューション3.1....

IE における条件付きコメントの利点と欠点

IE の条件付きコメントは、通常の (X)HTML コメントに対する Microsoft 独自の (...

Vue ソースコード学習でレスポンシブ性を実装する方法

目次序文1. レスポンシブシステムの重要な要素1. データの変更を監視する方法2. 依存関係を収集す...

dockerでPostgreSQLを実行する方法

1. Dockerをインストールします。参考URL: Docker 入門インストールチュートリアル ...

MySQL移行計画と落とし穴の実践記録

目次背景解決策1: 古いデータをバックアップするオプション2: テーブルを分割する解決策3: tid...

Centos7.6にTomcat-8.5.39をインストールする方法

Centos7.6 に Tomcat-8.5.39 をインストールする方法は次のとおりです。詳細は次...

シンプルなウェブページレイアウトの構造と表現原理の共有

構造とパフォーマンスの紹介HTML 構造、CSS 表現、JavaScript 動作。Web ページの...

画像の下部の空白部分の問題を解決する

最近のプロジェクトに取り組んでいるとき、下の図に示すように、画像を参照すると常に下部に空白スペースが...

Linux ディスクのマウント、パーティション分割、容量拡張操作を実装する方法

基本概念操作の前に、まずいくつかの基本的な概念を理解する必要がありますディスクLinux システムで...

Vueを使用して天気コンポーネントをロードする方法の詳細な説明

この記事では、Vueを使用して天気コンポーネントをロードする方法を参考までに紹介します。具体的な内容...

Docker-compose は Docker プライベート ウェアハウスのステップを迅速に構築します

docker-compose.ymlを作成し、次の内容を入力します。 バージョン: '3&#...