centos に mysql をオフラインでインストールする方法: 1. lib 内のすべての依存関係を Linux にアップロードし、yum コマンドでインストールします; 2. MySQL を解凍し、ファイルをインストールするディレクトリにコピーします; 3. mysql を変更します.cnf 設定ファイル; 4. 起動スクリプトをリソース ディレクトリにコピーし、起動スクリプトを変更します; 5. mysqld サービスをシステム サービスに追加します; 6. mysql クライアントを環境変数に設定し、設定を有効にします。
このチュートリアルの動作環境: centOS 7 システム、MySQL バージョン 5.6、Dell G3 コンピューター。
centos に mysql をオフラインでインストールするにはどうすればよいですか?
MySQL 5.6 の centOS 7 オフライン インストール
環境の準備
1. オフライン centOS 7 (これは centOS 7 の最小インストールです)
2. nginx インストール ファイル (mysql-5.6.51-linux-glibc2.12-x86_64.tar.gz は以下のリンクにあります。ダウンロードしてください)自分で作成するか、公式 Web サイトにアクセスして最新バージョンをダウンロードしてください)
#3. nginx 依存関係パッケージ (現在 lib ディレクトリにあり、自分でダウンロードできます) #現在、インストールに必要なパッケージと依存関係はすべて利用可能です 次のアドレスにアクセスして、対応するソフトウェアを自分でダウンロードしてください
https://gitee.com/livekeys/linux-offline-installation-software
1. mariadbをアンインストールします
事前にmariadbがあるかどうかを確認してください。存在する場合はそれを削除し、以前の設定ファイルも削除します/etc /my.cnflib 内のすべての依存関係を Linux にアップロードしてインストールしますコマンド[root@localhost ~]# rpm -qa | grep mariadb* mariadb-libs-5.5.56-2.el7.x86_64 [root@localhost ~]# rpm -e mariadb-libs --nodeps [root@localhost ~]# rpm -qa | grep mariadb* [root@localhost ~]# rm -f /etc/my.cnf [root@localhost ~]#2. 依存関係のインストール
#
[root@localhost lib]# yum -y localinstall *.rpm3. MySQL 5.6
[root@localhost mysql_install]# tar -xzvf mysql-5.6.51-linux-glibc2.12-x86_64.tar.gz [root@localhost mysql_install]# ls lib mysql-5.6.51-linux-glibc2.12-x86_64 mysql-5.6.51-linux-glibc2.12-x86_64.tar.gz [root@localhost mysql_install]# cp -R mysql-5.6.51-linux-glibc2.12-x86_64 /opt/mysql [root@localhost mysql_install]# cd /opt/mysql [root@localhost mysql]# ls bin data docs include lib LICENSE man mysql-test README scripts share sql-bench support-files
2. 新しい mysql グループと mysql ユーザーを作成し、mysql ディレクトリを mysql ユーザー グループで置き換えます
[root@localhost mysql]# groupadd mysql [root@localhost mysql]# useradd -g mysql mysql [root@localhost mysql]# cd .. [root@localhost opt]# ls mysql [root@localhost opt]# chown -R mysql:mysql mysql [root@localhost opt]# ll total 0 drwxr-xr-x. 13 mysql mysql 191 Mar 23 01:42 mysql [root@localhost opt]# cd mysql [root@localhost mysql]# ll total 224 drwxr-xr-x. 2 mysql mysql 4096 Mar 23 01:42 bin drwxr-xr-x. 3 mysql mysql 18 Mar 23 01:42 data drwxr-xr-x. 2 mysql mysql 55 Mar 23 01:42 docs drwxr-xr-x. 3 mysql mysql 4096 Mar 23 01:42 include drwxr-xr-x. 3 mysql mysql 4096 Mar 23 01:42 lib -rw-r--r--. 1 mysql mysql 200256 Mar 23 01:42 LICENSE drwxr-xr-x. 4 mysql mysql 30 Mar 23 01:42 man drwxr-xr-x. 10 mysql mysql 4096 Mar 23 01:42 mysql-test -rw-r--r--. 1 mysql mysql 566 Mar 23 01:42 README drwxr-xr-x. 2 mysql mysql 30 Mar 23 01:42 scripts drwxr-xr-x. 28 mysql mysql 4096 Mar 23 01:42 share drwxr-xr-x. 4 mysql mysql 4096 Mar 23 01:42 sql-bench drwxr-xr-x. 2 mysql mysql 136 Mar 23 01:42 support-files
3. 保存する新しい /var/lib/mysql ディレクトリを作成しますmysq.sock (他のディレクトリを作成することもできます)、ディレクトリに属するグループを myql
[root@localhost mysql]# mkdir /var/lib/mysql [root@localhost mysql]# chown -R mysql:mysql /var/lib/mysql [root@localhost mysql]# ls -al /var/lib/mysql total 4 drwxr-xr-x. 2 mysql mysql 6 Mar 23 01:51 . drwxr-xr-x. 26 root root 4096 Mar 23 01:51 ..
4 に追加します。mysql インストール ディレクトリに入り、mysql
[root@localhost mysql]# ./scripts/mysql_install_db --user=mysql --basedir=/opt/mysql --datadir=/opt/mysql/data Installing MySQL system tables...2022-03-23 01:53:51 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details). 2022-03-23 01:53:51 0 [Note] Ignoring --secure-file-priv value as server is running with --bootstrap. 2022-03-23 01:53:51 0 [Note] /opt/mysql/bin/mysqld (mysqld 5.6.51) starting as process 13346 ... 2022-03-23 01:53:51 13346 [Note] InnoDB: Using atomics to ref count buffer pool pages 2022-03-23 01:53:51 13346 [Note] InnoDB: The InnoDB memory heap is disabled 2022-03-23 01:53:51 13346 [Note] InnoDB: Mutexes and rw_locks use GCC atomic builtins 2022-03-23 01:53:51 13346 [Note] InnoDB: Memory barrier is not used 2022-03-23 01:53:51 13346 [Note] InnoDB: Compressed tables use zlib 1.2.11 2022-03-23 01:53:51 13346 [Note] InnoDB: Using Linux native AIO 2022-03-23 01:53:51 13346 [Note] InnoDB: Using CPU crc32 instructions 2022-03-23 01:53:51 13346 [Note] InnoDB: Initializing buffer pool, size = 128.0M 2022-03-23 01:53:51 13346 [Note] InnoDB: Completed initialization of buffer pool 2022-03-23 01:53:51 13346 [Note] InnoDB: The first specified data file ./ibdata1 did not exist: a new database to be created! 2022-03-23 01:53:51 13346 [Note] InnoDB: Setting file ./ibdata1 size to 12 MB 2022-03-23 01:53:51 13346 [Note] InnoDB: Database physically writes the file full: wait... 2022-03-23 01:53:51 13346 [Note] InnoDB: Setting log file ./ib_logfile101 size to 48 MB 2022-03-23 01:53:51 13346 [Note] InnoDB: Setting log file ./ib_logfile1 size to 48 MB 2022-03-23 01:53:51 13346 [Note] InnoDB: Renaming log file ./ib_logfile101 to ./ib_logfile0 2022-03-23 01:53:51 13346 [Warning] InnoDB: New log files created, LSN=45781 2022-03-23 01:53:51 13346 [Note] InnoDB: Doublewrite buffer not found: creating new 2022-03-23 01:53:51 13346 [Note] InnoDB: Doublewrite buffer created 2022-03-23 01:53:51 13346 [Note] InnoDB: 128 rollback segment(s) are active. 2022-03-23 01:53:51 13346 [Warning] InnoDB: Creating foreign key constraint system tables. 2022-03-23 01:53:51 13346 [Note] InnoDB: Foreign key constraint system tables created 2022-03-23 01:53:51 13346 [Note] InnoDB: Creating tablespace and datafile system tables. 2022-03-23 01:53:51 13346 [Note] InnoDB: Tablespace and datafile system tables created. 2022-03-23 01:53:51 13346 [Note] InnoDB: Waiting for purge to start 2022-03-23 01:53:51 13346 [Note] InnoDB: 5.6.51 started; log sequence number 0 2022-03-23 01:53:51 13346 [Note] RSA private key file not found: /opt/mysql/data//private_key.pem. Some authentication plugins will not work. 2022-03-23 01:53:51 13346 [Note] RSA public key file not found: /opt/mysql/data//public_key.pem. Some authentication plugins will not work. 2022-03-23 01:53:51 13346 [Note] Binlog end 2022-03-23 01:53:51 13346 [Note] InnoDB: FTS optimize thread exiting. 2022-03-23 01:53:51 13346 [Note] InnoDB: Starting shutdown... 2022-03-23 01:53:53 13346 [Note] InnoDB: Shutdown completed; log sequence number 1625977 OK Filling help tables...2022-03-23 01:53:53 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details). 2022-03-23 01:53:53 0 [Note] Ignoring --secure-file-priv value as server is running with --bootstrap. 2022-03-23 01:53:53 0 [Note] /opt/mysql/bin/mysqld (mysqld 5.6.51) starting as process 13368 ... 2022-03-23 01:53:53 13368 [Note] InnoDB: Using atomics to ref count buffer pool pages 2022-03-23 01:53:53 13368 [Note] InnoDB: The InnoDB memory heap is disabled 2022-03-23 01:53:53 13368 [Note] InnoDB: Mutexes and rw_locks use GCC atomic builtins 2022-03-23 01:53:53 13368 [Note] InnoDB: Memory barrier is not used 2022-03-23 01:53:53 13368 [Note] InnoDB: Compressed tables use zlib 1.2.11 2022-03-23 01:53:53 13368 [Note] InnoDB: Using Linux native AIO 2022-03-23 01:53:53 13368 [Note] InnoDB: Using CPU crc32 instructions 2022-03-23 01:53:53 13368 [Note] InnoDB: Initializing buffer pool, size = 128.0M 2022-03-23 01:53:53 13368 [Note] InnoDB: Completed initialization of buffer pool 2022-03-23 01:53:53 13368 [Note] InnoDB: Highest supported file format is Barracuda. 2022-03-23 01:53:53 13368 [Note] InnoDB: 128 rollback segment(s) are active. 2022-03-23 01:53:53 13368 [Note] InnoDB: Waiting for purge to start 2022-03-23 01:53:53 13368 [Note] InnoDB: 5.6.51 started; log sequence number 1625977 2022-03-23 01:53:53 13368 [Note] RSA private key file not found: /opt/mysql/data//private_key.pem. Some authentication plugins will not work. 2022-03-23 01:53:53 13368 [Note] RSA public key file not found: /opt/mysql/data//public_key.pem. Some authentication plugins will not work. 2022-03-23 01:53:53 13368 [Note] Binlog end 2022-03-23 01:53:53 13368 [Note] InnoDB: FTS optimize thread exiting. 2022-03-23 01:53:53 13368 [Note] InnoDB: Starting shutdown... 2022-03-23 01:53:55 13368 [Note] InnoDB: Shutdown completed; log sequence number 1625987 OK To start mysqld at boot time you have to copy support-files/mysql.server to the right place for your system PLEASE REMEMBER TO SET A PASSWORD FOR THE MySQL root USER ! To do so, start the server, then issue the following commands: /opt/mysql/bin/mysqladmin -u root password 'new-password' /opt/mysql/bin/mysqladmin -u root -h localhost.localdomain password 'new-password' Alternatively you can run: /opt/mysql/bin/mysql_secure_installation which will also give you the option of removing the test databases and anonymous user created by default. This is strongly recommended for production servers. See the manual for more instructions. You can start the MySQL daemon with: cd . ; /opt/mysql/bin/mysqld_safe & You can test the MySQL daemon with mysql-test-run.pl cd mysql-test ; perl mysql-test-run.pl Please report any problems at http://bugs.mysql.com/ The latest information about MySQL is available on the web at http://www.mysql.com Support MySQL by buying support/licenses at http://shop.mysql.com New default config file was created as /opt/mysql/my.cnf and will be used by default by the server when you start it. You may edit this file to change server settings
4 を初期化します。構成ファイル
[root@localhost mysql]# cp ./support-files/my-default.cnf /etc/my.cnf [root@localhost mysql]# chown mysql:mysql /etc/my.cnf [root@localhost mysql]# chmod 644 /etc/my.cnfmy.cnf をコピーして変更します。 構成ファイルの内容は次のとおりです。
(必要に応じて他の構成をここで変更します)
次の点に注意してください:
[mysql] # 设置mysql客户端默认字符集 default-character-set=utf8 socket=/var/lib/mysql/mysql.sock [mysqld] skip-name-resolve #设置 13306 端口 port = 13306 socket=/var/lib/mysql/mysql.sock # 设置mysql的安装目录 basedir=/opt/mysql # 设置mysql数据库的数据的存放目录 datadir=/opt/mysql/data # 允许最大连接数 max_connections=200 # 服务端使用的字符集默认为8比特编码的latin1字符集 character-set-server=utf8 # 创建新表时将使用的默认存储引擎 default-storage-engine=INNODB lower_case_table_name=1 max_allowed_packet=16M
[root@localhost mysql]# cp ./support-files/mysql.server /etc/rc.d/init.d/mysqld [root@localhost mysql]# chmod +x /etc/rc.d/init.d/mysqld [root@localhost mysql]# chown mysql:mysql /etc/rc.d/init.d/mysqld
6. 起動スクリプトを変更します
[root@localhost mysql]# vim /etc/rc.d/init.d/mysqld
注: mysql を追加しなかったため、/usr/local/mysql ディレクトリにインストールされているため、スタートアップ ファイル
basedir=/opt/mysql datadir=/opt/mysql/data
7 内の次の 2 つの値を変更します。mysqld サービスをシステム サービス
[root@localhost mysql]# chkconfig --add mysqld [root@localhost mysql]# chkconfig --list mysqld Note: This output shows SysV services only and does not include native systemd services. SysV configuration data might be overridden by native systemd configuration. If you want to list systemd services use 'systemctl list-unit-files'. To see services enabled on particular target use 'systemctl list-dependencies [target]'. mysqld 0:off 1:off 2:on 3:on 4:on 5:on 6:off
8 に追加します。コマンド systemctl を使用して、mysql サービスを開始します (アクティブ ステータス)はアクティブ (実行中)、つまり起動が成功したことを意味します)
[root@localhost mysql]# systemctl start mysql [root@localhost mysql]# systemctl status mysql ● mysqld.service - LSB: start and stop MySQL Loaded: loaded (/etc/rc.d/init.d/mysqld; bad; vendor preset: disabled) Active: active (running) since Wed 2022-03-23 02:11:17 EDT; 5s ago Docs: man:systemd-sysv-generator(8) Process: 13452 ExecStart=/etc/rc.d/init.d/mysqld start (code=exited, status=0/SUCCESS) CGroup: /system.slice/mysqld.service ├─13463 /bin/sh /opt/mysql/bin/mysqld_safe --datadir=/opt/mysql/data --pid-file=/opt/mysql/data/lo... └─13688 /opt/mysql/bin/mysqld --basedir=/opt/mysql --datadir=/opt/mysql/data --plugin-dir=/opt/mys... Mar 23 02:11:16 localhost.localdomain systemd[1]: Starting LSB: start and stop MySQL... Mar 23 02:11:16 localhost.localdomain mysqld[13452]: Starting MySQL.Logging to '/opt/mysql/data/localhost....r'. Mar 23 02:11:17 localhost.localdomain mysqld[13452]: SUCCESS! Mar 23 02:11:17 localhost.localdomain systemd[1]: Started LSB: start and stop MySQL. Hint: Some lines were ellipsized, use -l to show in full.
9. mysql クライアントを環境変数に設定し、設定を有効にします
[root@localhost mysql]# vim /etc/profile # 在末尾增加以下两行 export MYSQL_HOME=/opt/mysql export PATH=$MYSQL_HOME/bin:$PATH [root@localhost mysql]# source /etc/profile
10. に接続できるかテストします。 mysql
注:最初のログインにはパスワードは必要ありません。Enter を押すだけです[root@localhost ~]# mysql -uroot -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 1
Server version: 5.6.51 MySQL Community Server (GPL)
Copyright (c) 2000, 2021, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql>
11。
アカウントのパスワードを設定します。 P@ssw0rd
<pre class="brush:php;toolbar:false">mysql> use mysql;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Database changed
mysql> update user set password=password('P@ssw0rd') where user='root' and host='localhost';
Query OK, 1 row affected (0.00 sec)
Rows matched: 1 Changed: 1 Warnings: 0</pre>
12、リモート ホストのログインを設定します
mysql> use mysql; Reading table information for completion of table and column names You can turn off this feature to get a quicker startup with -A Database changed mysql> grant all privileges on *.* to 'root'@'%' identified by 'P@ssw0rd' with grant option; Query OK, 0 rows affected (0.00 sec)
13、mysqld サービスを再起動し、ログインをテストします
[root@localhost ~]# systemctl restart mysql [root@localhost ~]# mysql -uroot -p Enter password: Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 1 Server version: 5.6.51 MySQL Community Server (GPL) Copyright (c) 2000, 2021, Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. mysql> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | mysql | | performance_schema | | test | +--------------------+ 4 rows in set (0.00 sec) mysql>ここまで, mysql 5.6 のインストールが完了しました
間違いがある場合は、修正するメッセージを残してください。ありがとうございます。
推奨学習: 「
MySQL ビデオ チュートリアル
以上がCentOS に MySQL をオフラインでインストールする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。