**1.バージョン57 **の機能
[ MySQL](https://cloud.tencent.com/product/cdb?from=10680)5.7はエキサイティングなマイルストーンです。デフォルトのInnoDBエンジンに基づいて、ssl、json、仮想列などが追加されます。新機能。 postgreSQLおよび[MariaDB](https://cloud.tencent.com/product/tdsql?from=10680)と比較して、MySQL5.7は多くの「埋める」操作を実行しました。 mysql58は市場に出回っていますが、Windowsのアップグレードバージョンのみがプッシュされており、実際のmysql5.8インストールパッケージはなく、まだテスト段階にあることを示しています。mysql58が安定したら、後で58インストールチュートリアルを作成します。
2.インストール操作
1、 古いバージョンをアンインストールします
1.1、 MySQLを表示
|1 2|rpm -qa|grep mysql rpm -qa|grep mariadb|
|--------|--------|
1.2、 MySQLをアンインストールします
|1 2 3 4|rpm -e --nodeps mysql-5.1.73-7.el6.x86_64 rpm -e --nodeps mysql-connector-odbc-5.1.5r1144-7.el6.x86_64 rpm -e --nodeps mysql-libs-5.1.73-7.el6.x86_64 rpm -qa|grep mysql|
|--------|--------|
1.3、 データディレクトリを削除する
|1 2|ls -l /var/lib|grep mysql rm -rf /var/lib/mysql|
|--------|--------|
データディレクトリはバックアップおよび削除できます。 mysqldサービスは、初期化時にデータディレクトリが存在するかどうかを確認します。データディレクトリが存在しない場合、mysqldはそれを作成します。データディレクトリが存在し、空のディレクトリではない(つまり、ファイルまたはサブディレクトリを含む)場合、mysqldはエラーメッセージを表示し、アボート:
[ ERROR] --initialize specified but the data directory exists. Aborting.
2、 MySQL5.7をインストールします
2.1、 MySQL5.7を解凍します
1 | tar -xvf mysql-5.7.14-1.el6.x86_64.rpm-bundle.tar |
---|
mysqlパッケージの準備ができています(cent6、cent7を含む)
リンク:https://pan.baidu.com/s/1egdiiO2q1lOXtoHWd1yQvQ
抽出コード:11j1
**ちなみに、インストール環境はCentOS6.5なので、el6インストールパッケージを使用する必要があります。CentOS7はel7インストールパッケージを使用する必要があります。 ****
インストールパッケージに対応するシステムバージョンが正しくない場合、インストール中にglibcに関する依存関係エラーが表示されます。
**warning: **mysql-community-libs-5.7.14-1.el7.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY
error: Failed dependencies:
libc.so.6(GLIBC_2.14)(64bit) is needed by mysql-community-libs-5.7.14-1.el7.x86_64
2.2、 依存関係に従ってrpmパッケージを順番にインストールします
依存関係は共通→ライブラリ→クライアント→サーバー
1 2 3 4 | rpm -ivh mysql-community-common-5.7.14-1.el6.x86_64.rpm rpm -ivh mysql-community-libs-5.7.14-1.el6.x86_64.rpm rpm -ivh mysql-community-client-5.7.14-1.el6.x86_64.rpm rpm -ivh mysql-community-server-5.7.14-1.el6.x86_64.rpm |
---|
3、 MySQL5.7を初期化します
3.1、 mysqldサービスを開始します
1 2 | cd ../sbinは、/ usr / sbinディレクトリサービスmysqldstart |
---|
手動で初期化する必要がなく、起動時間が長くなり、辛抱強く待つ必要があります
3.2、 mysqldの実行ステータスを確認します
1 | service mysqld status |
---|
これまでのところ、MySQLは基本的に正常にインストールされていると判断できます。
3.3、 一時ログインパスワードを探す
1 | vi /var/log/mysqld.log |
---|
このコマンドを使用して、cat /var/log/mysqld.log | grep passwordをすばやく見つけ、MySQLにログインするためのランダムなパスワードを見つけることもできます。
3.4、 ログインする
1 | mysql -uroot -p |
---|
4、 MySQLリモートアクセスを構成する
4.1、 ルートパスワードを変更する
1 | alter user 'root'@'localhost' identified by 'abc@123'; |
---|
5.6以降、MySQLには組み込みのパスワード拡張メカニズムがあり、低強度のパスワードはエラーを報告します。
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
4.2、 リモートログインユーザーを追加します
1 2 | use mysql; GRANT ALL PRIVILEGES ON . TO 'root'@'%' IDENTIFIED BY 'abc@123' WITH GRANT OPTION; |
---|
' % 'は任意のアドレスを表します。IPを指定することもできます
4.3、 ユーザーテーブルを確認し、メモリのアクセス許可を更新します
1 2 | select host, user from user; FLUSH PRIVILEGES; |
---|
4.4、 ファイアウォールを設定する
1 | vi /etc/sysconfig/iptables |
---|
-A RH-Firewall-1-INPUT -j REJECT –reject-with icmp-host-prohibitedの前に、追加します
1 | - A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT |
---|
4.5、 ファイアウォールを再起動します
1 | service iptables restart |
---|
4.6、 mysql57エンコーディング形式をデバッグします
mysqlコマンドラインを入力し、次のように入力します。'character% 'などの変数を表示します。
データベースとサーバーをutf8に調整する必要があります。
まず、my.cnfファイルを見つけます
my.cnfのコンテンツを変更します。対応するラベルの下に追加し(下の図を参照)、[mysql]ラベルなしで追加します。
[ mysql]
default-character-set=utf8
[ mysqld]
character_set_server=utf8
collation_server=utf8_general_ci
保存後にmysqlを再起動し、サービスmysqldを再起動し、再起動後にmysqlコマンドラインに再度ログインします。
'character%'のようなshow変数を入力します。
次の図は、データベースの構成が完了したことを示しています。
Recommended Posts