linux 无外网情况下安装 mysql
由于工作需要,需要在一臺裝有?CentOS?系統的測試服務器上安裝 MySQL ,由于該服務器上存有其他比較重要的測試數據,所以不能連接外網。由于之前安裝 MySQL 一直都是使用 yum 命令一鍵搞定的,所以手動安裝的話還是有些麻煩的。所以在這里我將我在安裝過程中遇到的一些問題記錄下來。
1.需求就不用講了,客戶現場,政府環境,銀行環境,大多是沒網的,所以無網安裝是很有必要的
mysql下載路徑:https://dev.mysql.com/downloads/mysql/
查看自己Linux系統版本
[root@linuxidc ~]# cat /etc/RedHat-release CentOS Linux release 7.3.1611 (Core)往下拉繼續選擇
選擇對應的下載,mysql-5.7.20-1.el7.x86_64.rpm-bundle.tar
這樣幾分鐘就下載了。
2.準備依賴包:
a.numactl 軟件包:
- numactl-2.0.9-6.el7_2.x86_64.rpm
- numactl-devel-2.0.9-6.el7_2.x86_64.rpm
- numactl-libs-2.0.9-6.el7_2.x86_64.rpm
b.其他相關支持:
- perl-Data-Dumper-2.145-3.el7.x86_64.rpm
- libaio-0.3.109-13.el7.x86_64.rpm
下載方式:https://pkgs.org
下面是下載路徑:
libaio-0.3.109-13.el7.x86_64.rpm
perl-Data-Dumper-2.145-3.el7.x86_64.rpm
numactl-libs-2.0.9-6.el7_2.x86_64.rpm
numactl-devel-2.0.9-6.el7_2.x86_64.rpm
numactl-2.0.9-6.el7_2.x86_64.rpm
3.上傳文件到服務器上
localhost:Downloads kylin$?scp?-r numactl-2.0.9-6.el7_2.x86_64.rpm root@linuxidc:/root/ root@linuxidc's password: numactl-2.0.9-6.el7_2.x86_64.rpm? ? ? ? ? ? ? 100%? 65KB? 2.1MB/s??00:00? ? localhost:Downloads kylin$?scp?-r numactl-libs-2.0.9-6.el7_2.x86_64.rpm root@linuxidc:/root/ root@linuxidc's password: numactl-libs-2.0.9-6.el7_2.x86_64.rpm? ? ? ? 100%? 29KB? 1.7MB/s??00:00? ? localhost:Downloads kylin$?scp?-r numactl-devel-2.0.9-6.el7_2.x86_64.rpm root@linuxidc:/root/ root@linuxidc's password: numactl-devel-2.0.9-6.el7_2.x86_64.rpm? ? ? ? 100%? 23KB? 1.5MB/s??00:00? ? localhost:Downloads kylin$?scp?-r perl-Data-Dumper-2.145-3.el7.x86_64.rpm root@linuxidc:/root/ root@linuxidc's password: perl-Data-Dumper-2.145-3.el7.x86_64.rpm? ? ? 100%? 47KB? 1.2MB/s??00:00? ? localhost:Downloads kylin$?scp?-r libaio-0.3.109-13.el7.x86_64.rpm root@linuxidc:/root/ root@linuxidc's password: Permission denied, please try again. root@linuxidc's password: libaio-0.3.109-13.el7.x86_64.rpm? ? ? ? ? ? ? 100%? 24KB 618.3KB/s??00:00? ? localhost:Downloads kylin$?scp?-r mysql-5.7.20-1.el7.x86_64.rpm-bundle.tar?root@linuxidc:/root/ root@linuxidc's password: mysql-5.7.20-1.el7.x86_64.rpm-bundle.tar? ? ? ? ? ? ? ? ? ??100%? 566MB? 4.5MB/s??02:05?查看上傳的包
[root@linuxidc ~]# ls anaconda-ks.cfg? ? ? ? ? ? ? ? ? ? ? ? ? numactl-devel-2.0.9-6.el7_2.x86_64.rpm libaio-0.3.109-13.el7.x86_64.rpm? ? ? ? ? numactl-libs-2.0.9-6.el7_2.x86_64.rpm miniconda2? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? perl-Data-Dumper-2.145-3.el7.x86_64.rpm mysql-5.7.20-1.el7.x86_64.rpm-bundle.tar??pythonshell numactl-2.0.9-6.el7_2.x86_64.rpm?4.安裝
第一步,先安裝依賴,安裝?perl-Data-Dumper-2.145-3.el7.x86_64.rpm 和?libaio-0.3.109-13.el7.x86_64.rpm
[root@linuxidc ~]# rpm -ivh libaio-0.3.109-13.el7.x86_64.rpm Preparing...? ? ? ? ? ? ? ? ? ? ? ? ??################################# [100%] ? ??package libaio-0.3.109-13.el7.x86_64 is already installed [root@linuxidc ~]# rpm -ivh perl-Data-Dumper-2.145-3.el7.x86_64.rpm Preparing...? ? ? ? ? ? ? ? ? ? ? ? ??################################# [100%] Updating / installing... ? ?1:perl-Data-Dumper-2.145-3.el7? ??################################# [100%]?第二步,繼續安裝?numactl相關
[root@linuxidc ~]# rpm -ivh numactl* Preparing...? ? ? ? ? ? ? ? ? ? ? ? ??################################# [100%] ? ??package numactl-libs-2.0.9-6.el7_2.x86_64 is already installed?如果不安裝這個包會報錯,錯誤如下(本人未測試):
error: Failed dependencies: ?? libnuma.so.1()(64bit) is needed by mysql-community-server-5.7.18-1.el7.x86_64 ?? libnuma.so.1(libnuma_1.1)(64bit) is needed by mysql-community-server-5.7.18-1.el7.x86_64 ?? libnuma.so.1(libnuma_1.2)(64bit) is needed by mysql-community-server-5.7.18-1.el7.x86_64??若此時直接安裝mysql,還會異常:
warning: mysql-community-libs-5.7.18-1.el7.x86_64.rpm: Header V3 DSA/SHA1?Signature, key ID 5072e1f5: NOKEY error: Failed dependencies: ?mysql-community-common(x86-64) >= 5.7.9 is needed by mysql-community-libs-5.7.18-1.el7.x86_64 ?mariadb-libs is obsoleted by mysql-community-libs-5.7.18-1.el7.x86_64? 第一行還能看明白,是依賴問題,第二行的“mariadb-libs 被廢棄”是什么鬼?廢棄了為什么不提供一個新的還要出現這種弱智提示呢?經過一番搜尋,才發現是因為在CentOS 7上已經有一個mariadb 而這個會與 MySQL的mariadb發生沖突。所以此時我們需要將系統自帶的mariadb卸載掉,然后使用mysql自帶的mariadb。
接下來查看mariadb版本
[root@linuxidc ~]# rpm -qa | grep mariadb mariadb-libs-5.5.52-1.el7.x86_64?卸載系統安裝的mariadb
[root@linuxidc ~]# rpm -e --nodeps mariadb-libs-5.5.52-1.el7.x86_64 [root@linuxidc ~]# rpm -qa | grep mariadb [root@linuxidc ~]#? 解決好這個問題后,就可以安裝mysql了,先解壓mysql,并查看安裝包
[root@linuxidc ~]# tar -xf mysql-5.7.20-1.el7.x86_64.rpm-bundle.tar [root@linuxidc ~]# ls anaconda-ks.cfg libaio-0.3.109-13.el7.x86_64.rpm miniconda2 mysql-5.7.20-1.el7.x86_64.rpm-bundle.tar mysql-community-client-5.7.20-1.el7.x86_64.rpm mysql-community-common-5.7.20-1.el7.x86_64.rpm mysql-community-devel-5.7.20-1.el7.x86_64.rpm mysql-community-embedded-5.7.20-1.el7.x86_64.rpm mysql-community-embedded-compat-5.7.20-1.el7.x86_64.rpm mysql-community-embedded-devel-5.7.20-1.el7.x86_64.rpm mysql-community-libs-5.7.20-1.el7.x86_64.rpm mysql-community-libs-compat-5.7.20-1.el7.x86_64.rpm mysql-community-minimal-debuginfo-5.7.20-1.el7.x86_64.rpm mysql-community-server-5.7.20-1.el7.x86_64.rpm mysql-community-server-minimal-5.7.20-1.el7.x86_64.rpm mysql-community-test-5.7.20-1.el7.x86_64.rpm numactl-2.0.9-6.el7_2.x86_64.rpm numactl-devel-2.0.9-6.el7_2.x86_64.rpm numactl-libs-2.0.9-6.el7_2.x86_64.rpm perl-Data-Dumper-2.145-3.el7.x86_64.rpm pythonshell?直接安裝,報錯:
[root@linuxidc ~]# rpm -ivh mysql-community-* warning: mysql-community-client-5.7.20-1.el7.x86_64.rpm: Header V3 DSA/SHA1?Signature, key ID 5072e1f5: NOKEY error: Failed dependencies: ? ??net-tools is needed by mysql-community-server-5.7.20-1.el7.x86_64 ? ??perl(JSON) is needed by mysql-community-test-5.7.20-1.el7.x86_64?貌似不能直接全安裝,有順序,繼續:
[root@linuxidc ~]# rpm -ivh mysql-community-common-5.7.20-1.el7.x86_64.rpm warning: mysql-community-common-5.7.20-1.el7.x86_64.rpm: Header V3 DSA/SHA1?Signature, key ID 5072e1f5: NOKEY Preparing...? ? ? ? ? ? ? ? ? ? ? ? ??################################# [100%] Updating / installing... ? ?1:mysql-community-common-5.7.20-1.e################################# [100%] [root@linuxidc ~]# rpm -ivh mysql-community-libs-* warning: mysql-community-libs-5.7.20-1.el7.x86_64.rpm: Header V3 DSA/SHA1?Signature, key ID 5072e1f5: NOKEY Preparing...? ? ? ? ? ? ? ? ? ? ? ? ??################################# [100%] Updating / installing... ? ?1:mysql-community-libs-5.7.20-1.el7################################# [ 50%] ? ?2:mysql-community-libs-compat-5.7.2################################# [100%] [root@linuxidc ~]# rpm -ivh mysql-community-devel-5.7.20-1.el7.x86_64.rpm warning: mysql-community-devel-5.7.20-1.el7.x86_64.rpm: Header V3 DSA/SHA1?Signature, key ID 5072e1f5: NOKEY Preparing...? ? ? ? ? ? ? ? ? ? ? ? ??################################# [100%] Updating / installing... ? ?1:mysql-community-devel-5.7.20-1.el################################# [100%] [root@linuxidc ~]# [root@linuxidc ~]# rpm -ivh mysql-community-server-5.7.20-1.el7.x86_64.rpm warning: mysql-community-server-5.7.20-1.el7.x86_64.rpm: Header V3 DSA/SHA1?Signature, key ID 5072e1f5: NOKEY error: Failed dependencies: ? ??mysql-community-client(x86-64) >= 5.7.9 is needed by mysql-community-server-5.7.20-1.el7.x86_64 ? ??net-tools is needed by mysql-community-server-5.7.20-1.el7.x86_64?說缺少net-tools ,下載下來裝唄,繼續:
net-tools-2.0-0.22.20131004git.el7.x86_64.rpm
[root@linuxidc ~]# rpm -ivh net-tools-2.0-0.22.20131004git.el7.x86_64.rpm Preparing...? ? ? ? ? ? ? ? ? ? ? ? ??################################# [100%] Updating / installing... ? ?1:net-tools-2.0-0.22.20131004git.el################################# [100%] [root@linuxidc ~]# rpm -ivh mysql-community-server-5.7.20-1.el7.x86_64.rpm warning: mysql-community-server-5.7.20-1.el7.x86_64.rpm: Header V3 DSA/SHA1?Signature, key ID 5072e1f5: NOKEY error: Failed dependencies: ? ??mysql-community-client(x86-64) >= 5.7.9 is needed by mysql-community-server-5.7.20-1.el7.x86_64 [root@linuxidc ~]# rpm -ivh mysql-community-c mysql-community-client-5.7.20-1.el7.x86_64.rpm? mysql-community-common-5.7.20-1.el7.x86_64.rpm [root@linuxidc ~]# rpm -ivh mysql-community-client-5.7.20-1.el7.x86_64.rpm warning: mysql-community-client-5.7.20-1.el7.x86_64.rpm: Header V3 DSA/SHA1?Signature, key ID 5072e1f5: NOKEY Preparing...? ? ? ? ? ? ? ? ? ? ? ? ??################################# [100%] Updating / installing... ? ?1:mysql-community-client-5.7.20-1.e################################# [100%] [root@linuxidc ~]# rpm -ivh mysql-community-server-5.7.20-1.el7.x86_64.rpm warning: mysql-community-server-5.7.20-1.el7.x86_64.rpm: Header V3 DSA/SHA1?Signature, key ID 5072e1f5: NOKEY Preparing...? ? ? ? ? ? ? ? ? ? ? ? ??################################# [100%] Updating / installing... ? ?1:mysql-community-server-5.7.20-1.e################################# [100%]?中間安裝server時,又說必須安裝client,至此,mysql安裝成功,打完收工。
5.啟動查看配置
[root@linuxidc ~]# service mysqld start Redirecting to?/bin/systemctl?start? mysqld.service [root@linuxidc ~]# service mysqld status Redirecting to?/bin/systemctl?status? mysqld.service ● mysqld.service - MySQL Server ? ?Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: disabled) ? ?Active: active (running) since Sat 2017-11-04 13:56:37 CST; 24s ago ? ? ?Docs:?man:mysqld(8) ? ? ? ? ? ?http://dev.mysql.com/doc/refman/en/using-systemd.html ??Process: 4644 ExecStart=/usr/sbin/mysqld?--daemonize --pid-file=/var/run/mysqld/mysqld.pid $MYSQLD_OPTS (code=exited, status=0/SUCCESS) ??Process: 4571 ExecStartPre=/usr/bin/mysqld_pre_systemd?(code=exited, status=0/SUCCESS) ?Main PID: 4647 (mysqld) ? ?CGroup:?/system.slice/mysqld.service ? ? ? ? ? ?└─4647?/usr/sbin/mysqld?--daemonize --pid-file=/var/run/mysqld/mysqld.pid Nov 04 13:56:07 linuxidc systemd[1]: Starting MySQL Server... Nov 04 13:56:37 linuxidc systemd[1]: Started MySQL Server.?至此,無網安裝難的歷史已經結束,至少的我實驗沒問題了,好像還缺點是什么,數據庫密碼是啥?
[root@linuxidc ~]# cat /var/log/mysqld.log | grep password 2017-11-04T05:56:08.454323Z 1 [Note] A temporary password is generated?for?root@localhost: ps1DY?%T.Vc4這樣就可以登錄數據庫了,try一下:
[root@linuxidc ~]# mysql -u root ERROR 1045 (28000): Access denied?for?user?'root'@'localhost'?(using password: NO)?報錯了,連輸入密碼的機會也沒有。
[root@linuxidc ~]# mysql -uroot -p Enter password: Welcome to the MySQL monitor.? Commands end with ; or \g. Your MySQL connection?id?is 6 Server version: 5.7.20 Copyright (c) 2000, 2017,?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>?登陸成功試試,數據庫好使不
mysql> show databases; ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.?不改密碼,用不了,繼續:
mysql> ALTER USER?'root'@'localhost'?IDENTIFIED BY?'你的密碼'; Query OK, 0 rows affected (0.02 sec) mysql> FLUSH PRIVILEGES; Query OK, 0 rows affected (0.01 sec)?然后再使用SQL就沒問題了
mysql> show databases; +--------------------+ | Database? ? ? ? ? | +--------------------+ | information_schema | | mysql? ? ? ? ? ? ? | | performance_schema | | sys? ? ? ? ? ? ? ? | +--------------------+ 4 rows?in?set?(0.00 sec)?用數據庫工具鏈接,出現問題:
?
不允許遠程訪問,改繼續:
mysql>? GRANT ALL PRIVILEGES ON *.* TO?'root'@'%'?IDENTIFIED BY?'你的密碼'?WITH GRANT OPTION; Query OK, 0 rows affected, 1 warning (0.00 sec) mysql> FLUSH PRIVILEGES; Query OK, 0 rows affected (0.00 sec)?再試就沒有問題了,至此數據庫安裝問題基本沒有。
查看mysql配置文件地址:
[root@linuxidc ~]# find / -iname '*.cnf' -print /etc/pki/tls/openssl.cnf /etc/my.cnf /root/miniconda2/pkgs/openssl-1.0.2l-0/ssl/openssl.cnf /root/miniconda2/ssl/openssl.cnf /var/lib/mysql/auto.cnf?查看字符集:
mysql> show variables like?'char%'; +--------------------------+----------------------------+ | Variable_name? ? ? ? ? ? | Value? ? ? ? ? ? ? ? ? ? ? | +--------------------------+----------------------------+ | character_set_client? ? | utf8? ? ? ? ? ? ? ? ? ? ? | | character_set_connection | utf8? ? ? ? ? ? ? ? ? ? ? | | character_set_database? | latin1? ? ? ? ? ? ? ? ? ? | | character_set_filesystem | binary? ? ? ? ? ? ? ? ? ? | | character_set_results? ? | utf8? ? ? ? ? ? ? ? ? ? ? | | character_set_server? ? | latin1? ? ? ? ? ? ? ? ? ? | | character_set_system? ? | utf8? ? ? ? ? ? ? ? ? ? ? | | character_sets_dir? ? ? |?/usr/share/mysql/charsets/?| +--------------------------+----------------------------+ 8 rows?in?set?(0.01 sec)?至此數據庫安裝完畢。
轉載于:https://www.cnblogs.com/yhoralce/p/8325142.html
總結
以上是生活随笔為你收集整理的linux 无外网情况下安装 mysql的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: sizeof和strlen的区别
- 下一篇: iOS native集成Weex js文