下載地址
openjdk1.8:https://www.oracle.com/java/technologies/downloads/
elasticsearch-8.1.0:https://elasticsearch.cn/download/ (注意:8.1.0不支持JDK1.8,會(huì)使用內(nèi)置JDK,最后支持JDK1.8的版本是7.17)
kibana8.1.0:https://elasticsearch.cn/download/
apache-activemq-5.16.2:https://activemq.apache.org/activemq-5016002-release
redis7.0.8:http://download.redis.io/releases/
postgresql-11.7:https://www.postgresql.org/ftp/source/v11.7/
timescaledb-2.3.1:https://github.com/timescale/timescaledb/releases/tag/2.3.1
openssl-3.1.0:https://github.com/openssl/openssl/releases/tag/openssl-3.1.0
mysql8.0.28:https://downloads.mysql.com/archives/community/
安裝JDK
查看JDK信息
java -version
卸載open-jdk
#查看系統(tǒng)的JDK安裝包
rpm -qa|grep jdk
#卸載JDK安裝包:
rpm -e --nodeps java-1.8.0-openjdk
rpm -e --nodeps java-1.8.0-openjdk-headless
rpm -e --nodeps java-11-openjdk
rpm -e --nodeps java-11-openjdk-headless
rpm -e --nodeps copy-jdk-configs
#查看java安裝包
rpm -e --nodeps javapackages-filesystem
rpm -e --nodeps javapackages-tools
rpm -e --nodeps tzdata-java
#確認(rèn)卸載情況
java -version
安裝JDK
#進(jìn)入/usr/local目錄
cd /usr/local
#創(chuàng)建java文件夾
mkdir java
#把JDK壓縮文件放進(jìn)來(lái)捍壤,然后解壓
tar -zxvf jdk-8u171-linux-x64.tar.gz
#設(shè)置JDK環(huán)境變量
vim /etc/profile
#輸入i編輯文件,在profile最后追加JAVA_HOME和path
export JAVA_HOME=/usr/local/java/jdk1.8.0_171
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
#編輯完成按ESC,然后:wq保存
#刷新配置文件鞍爱,使配置文件產(chǎn)生作用
source /etc/profile
#測(cè)試java是否安裝成功
java -version
安裝elasticsearch
查看操作系統(tǒng)配置信息
[root@localhost /]# cat /proc/version
Linux version 4.19.90-24.4.v2101.ky10.x86_64 (KYLINSOFT@localhost.localdomain) (gcc version 7.3.0 (GCC)) #1 SMP Mon May 24 12:14:55 CST 2021
查看CPU芯片信息
[root@localhost /]# lscpu
架構(gòu): x86_64
CPU 運(yùn)行模式: 32-bit, 64-bit
字節(jié)序: Little Endian
Address sizes: 43 bits physical, 48 bits virtual
CPU: 1
在線 CPU 列表: 0
每個(gè)核的線程數(shù): 1
每個(gè)座的核數(shù): 1
座: 1
NUMA 節(jié)點(diǎn): 1
廠商 ID: GenuineIntel
CPU 系列: 6
型號(hào): 165
型號(hào)名稱: Intel(R) Core(TM) i7-10750H CPU @ 2.60GHz
步進(jìn): 2
CPU MHz: 2592.002
BogoMIPS: 5184.00
超管理器廠商: VMware
虛擬化類(lèi)型: 完全
L1d 緩存: 32 KiB
L1i 緩存: 32 KiB
L2 緩存: 256 KiB
L3 緩存: 12 MiB
安裝elasticsearch
#進(jìn)入/usr/local目錄
cd /usr/local
#創(chuàng)建elasticsearch目錄
mkdir elasticsearch
#把elasticsearch壓縮文件放進(jìn)來(lái)鹃觉,然后解壓
tar -zxvf elasticsearch-8.1.0-linux-x86_64.tar.gz
#創(chuàng)建用戶(基于安全可控的原則,Elasticsearch 不允許 root 用戶直接運(yùn)行睹逃;)
#新增 es 用戶
useradd es
#為 es 用戶設(shè)置密碼
passwd es
#如果錯(cuò)了盗扇,可以刪除再加
userdel -r es
#切換用戶命令
su es
修改屬性(重要)
[root@localhost elasticsearch]# pwd
/usr/local/elasticsearch
#修改屬性(root用戶使用)
chown -R es:es elasticsearch-8.1.0
修改配置文件
#修改elasticsearch-8.1.0/config/elasticsearch.yml 文件加入如下配置
vim elasticsearch.yml
cluster.name: my-application
node.name: node-1
network.host: 0.0.0.0
http.port: 9200
cluster.initial_master_nodes: ["node-1"]
- 為es設(shè)置ip綁定,默認(rèn)是127.0.0.1,也就是默認(rèn)只能通過(guò)127.0.0.1 或者localhost才能訪問(wèn)沉填,也可配置0.0.0.0全部可以訪問(wèn)
- 為es設(shè)置自定義端口疗隶,默認(rèn)是9200
修改OS層系統(tǒng)參數(shù)
#修改/etc/security/limits.conf 在文件末尾中增加下面內(nèi)容(每個(gè)進(jìn)程可以打開(kāi)的文件數(shù)的限制)
es soft nofile 65536
es hard nofile 65536
#修改/etc/sysctl.conf 在文件中增加下面內(nèi)容(一個(gè)進(jìn)程可以擁有的 VMA(虛擬內(nèi)存區(qū)域)的數(shù)量,默認(rèn)值為 65536)
vm.max_map_count=655360
#重新加載配置
sysctl -p
kernel.sysrq = 0
net.ipv4.ip_forward = 0
net.ipv4.conf.all.send_redirects = 0
net.ipv4.conf.default.send_redirects = 0
net.ipv4.conf.all.accept_source_route = 0
net.ipv4.conf.default.accept_source_route = 0
net.ipv4.conf.all.accept_redirects = 0
net.ipv4.conf.default.accept_redirects = 0
net.ipv4.conf.all.secure_redirects = 0
net.ipv4.conf.default.secure_redirects = 0
net.ipv4.icmp_echo_ignore_broadcasts = 1
net.ipv4.icmp_ignore_bogus_error_responses = 1
net.ipv4.conf.all.rp_filter = 1
net.ipv4.conf.default.rp_filter = 1
net.ipv4.tcp_syncookies = 1
kernel.dmesg_restrict = 1
net.ipv6.conf.all.accept_redirects = 0
net.ipv6.conf.default.accept_redirects = 0
vm.max_map_count = 655360
啟動(dòng)軟件
#使用 ES 用戶啟動(dòng)
su - es
cd /usr/local/elasticsearch/elasticsearch-8.1.0/bin
正常啟動(dòng)(可以用來(lái)查看報(bào)錯(cuò))
./elasticsearch
后臺(tái)啟動(dòng)
./elasticsearch -d
停止es
ps -ef|grep elasticsearch
kill -9 pid
設(shè)置密碼
#進(jìn)入ES的安裝目錄修改elasticsearch.yml文件在最后一行添加xpack.security.enabled: true開(kāi)源版本默認(rèn)是關(guān)閉的(開(kāi)啟的狀態(tài)就不要修改了)
cd /usr/local/elasticsearch/elasticsearch-8.1.0/config
vim elasticsearch.yml
xpack.security.enabled: true
#啟動(dòng)es(重要)
cd /usr/local/elasticsearch/elasticsearch-8.1.0/bin
./elasticsearch -d
#以交互的方式設(shè)置用戶名和密碼:(記住你所設(shè)置的密碼)
./elasticsearch-setup-passwords interactive
Note: The 'elasticsearch-setup-passwords' tool has been deprecated. This command will be removed in a future release.
Initiating the setup of passwords for reserved users elastic,apm_system,kibana,kibana_system,logstash_system,beats_system,remote_monitoring_user.
You will be prompted to enter passwords as the process progresses.
翻譯:
注意:'elasticsearch-setup-passwords'工具已棄用。該命令將在未來(lái)的版本中刪除翼闹。
啟動(dòng)為保留用戶elastic斑鼻、apm_system、kibana猎荠、kibana_system卵沉、logstash_system、beats_system法牲、remote_monitoring_user設(shè)置密碼史汗。
隨著過(guò)程的進(jìn)行,系統(tǒng)將提示您輸入密碼拒垃。
注意:因?yàn)樾枰O(shè)置 elastic停撞,apm_system,kibana悼瓮,kibana_system戈毒,logstash_system,beats_system横堡,remote_monitoring_user 這些用戶的密碼埋市。
#新的訪問(wèn)方式
curl localhost:9200 -u elastic:{password}
離線啟動(dòng)錯(cuò)誤解決方案
錯(cuò)誤一:java.net.UnknownHostException: geoip.elastic.co
在elasticsearch.yml中添加如下配置:
ingest.geoip.downloader.enabled: false
關(guān)閉geoip數(shù)據(jù)庫(kù)的更新(因?yàn)樾枰?lián)網(wǎng))
錯(cuò)誤二:received plaintext http traffic on an https channel, closing connection Netty4HttpChannel{localAddress=/127.0.0.1:9200, remoteAddress=/127.0.0.1:47014}
1、使用 https 發(fā)送請(qǐng)求命贴,即:把 http 請(qǐng)求改成 https 即可道宅。
2、修改配置文件(如果設(shè)置了密碼就不要使用這個(gè)了)胸蛛。
修改elasticsearch.yml配置文件
將xpack.security.enabled設(shè)置為false,重啟污茵。
錯(cuò)誤三:如果不需要ssl驗(yàn)證
在elasticsearch.yml中添加如下配置:
Enable encryption for HTTP API client connections, such as Kibana, Logstash, and Agents xpack.security.http.ssl: enabled: false
安裝kibana
#進(jìn)入/usr/local目錄
cd /usr/local
#創(chuàng)建kibana目錄
mkdir kibana
#把kibana壓縮文件放進(jìn)來(lái),然后解壓
tar -zxvf kibana-8.1.0-linux-x86_64.tar.gz
修改配置
vim config/kibana.yml
# Kibana 端口號(hào)
server.port: 5601
# 遠(yuǎn)程訪問(wèn)kibana地址
server.host: "0.0.0.0"
# 使您能夠在運(yùn)行于代理之后指定掛載Kibana的路徑葬项。這只會(huì)影響到由Kibana生成的url泞当,
# 您的代理在將請(qǐng)求轉(zhuǎn)發(fā)到Kibana之前應(yīng)該刪除basePath值。
# 此設(shè)置不能以斜線結(jié)束民珍。
#server.basePath: ""
# 傳入服務(wù)器請(qǐng)求的最大有效負(fù)載大小(以字節(jié)為單位)襟士。
#server.maxPayloadBytes: 1048576
# Kibana 服務(wù)名
#server.name: "your-hostname"
# 要用于所有查詢的Elasticsearch實(shí)例的URL盗飒。
# 也可以配置多個(gè)ES
# elasticsearch.hosts: ["http://IP:PORT","http://IP:PORT"]
elasticsearch.hosts: ["http://localhost:9200"]
# 當(dāng)該設(shè)置的值為true時(shí),Kibana使用服務(wù)器中指定的主機(jī)名設(shè)置
# 當(dāng)這個(gè)設(shè)置的值為false時(shí)陋桂,Kibana使用連接到這個(gè)Kibana實(shí)例的主機(jī)的主機(jī)名箩兽。
#elasticsearch.preserveHost: true
# Kibana在Elasticsearch中使用索引來(lái)存儲(chǔ)保存的搜索、可視化和儀表板章喉。
# 如果索引不存在,則Kibana創(chuàng)建一個(gè)新索引身坐。
#kibana.index: ".kibana"
# 要加載的默認(rèn)應(yīng)用程序秸脱。
#kibana.defaultAppId: "discover"
#如果ES設(shè)置了用戶驗(yàn)證,則需要配置可用的用戶名密碼 (如果es設(shè)置kibana用戶直接可以使用)
#elasticsearch.username: "kibana"
#elasticsearch.password: "pass"
# 分別啟用SSL和到peme格式SSL證書(shū)和SSL密鑰文件的路徑部蛇。
# 這些設(shè)置為從Kibana服務(wù)器發(fā)送到瀏覽器的請(qǐng)求啟用SSL摊唇。
#server.ssl.enabled: false
#server.ssl.certificate: /path/to/your/server.crt
#server.ssl.key: /path/to/your/server.key
# 提供pemm格式SSL證書(shū)和密鑰文件路徑的可選設(shè)置。
# 這些文件將驗(yàn)證您的Elasticsearch后端是否使用了相同的密鑰文件涯鲁。
#elasticsearch.ssl.certificate: /path/to/your/client.crt
#elasticsearch.ssl.key: /path/to/your/client.key
# 可選設(shè)置巷查,使您能夠?yàn)槟腅lasticsearch實(shí)例的證書(shū)頒發(fā)機(jī)構(gòu)指定PEM文件的路徑。
#elasticsearch.ssl.certificateAuthorities: [ "/path/to/your/CA.pem" ]
# 若要忽略SSL證書(shū)的有效性抹腿,請(qǐng)將此設(shè)置的值更改為“none”岛请。
#elasticsearch.ssl.verificationMode: full
# 等待Elasticsearch響應(yīng)ping的時(shí)間(毫秒)
# 默認(rèn)使用elasticsearch.requestTimeout 的設(shè)置
#elasticsearch.pingTimeout: 1500
# 等待后端或Elasticsearch響應(yīng)的時(shí)間(毫秒)
#elasticsearch.requestTimeout: 30000
設(shè)置中文模式
#在kibana.yml配置文件中添加一行配置
i18n.locale: "zh-CN"
修改權(quán)限
chown -R es:es kibana-8.1.0
后臺(tái)啟動(dòng)
su es
cd /usr/local/kibana/kibana-8.1.0/bin
#啟動(dòng)
./kibana
#后臺(tái)啟動(dòng)
nohup ./kibana &
web訪問(wèn)
http://虛擬機(jī)ip:5601
終止進(jìn)程
#查看進(jìn)程
lsof -i:5601
kill -9進(jìn)程號(hào)
安裝ActiveMq
安裝ActiveMq
#進(jìn)入/usr/local目錄
cd /usr/local
#創(chuàng)建kibana目錄
mkdir activemq
#把kibana壓縮文件放進(jìn)來(lái),然后解壓
tar -zxvf apache-activemq-5.16.2-bin.tar.gz
啟動(dòng)
#進(jìn)入主目錄
cd apache-activemq-5.16.2
cd bin
#啟動(dòng)
./activemq start
#訪問(wèn)地址
http://ip地址:8161 方式訪問(wèn)管理界面警绩,默認(rèn)用戶名和密碼admin/admin
停止
./activemq stop
#或
ps -ef | grep activemq
kill -9 進(jìn)程號(hào)
常見(jiàn)問(wèn)題
安裝成功web頁(yè)面不能訪問(wèn)
1.修改Host
cd apache-activemq-5.16.2/conf
#修改配置文件
vim jetty.xml
<bean id="jettyPort" class="org.apache.activemq.web.WebConsolePort" init-method="start">
<!-- the default port number for the web console -->
<property name="host" value="0.0.0.0"/>
<property name="port" value="8161"/>
</bean>
2.防火墻
如果開(kāi)啟了防火墻崇败,需要開(kāi)放相應(yīng)的端口
firewall-cmd --zone=public --add-port=8161/tcp --permanent
firewall-cmd --zone=public --add-port=61616/tcp --permanent
#重新載入
firewall-cmd --reload
#查看端口是否設(shè)置成功
firewall-cmd --zone=public --list-ports
3.目錄不準(zhǔn)確
有的版本啟動(dòng)程序是在bin目錄底下還有一級(jí)的包里。
修改啟動(dòng)參數(shù)
cd apache-activemq-5.16.2/bin
vim env
# Set jvm memory configuration (minimal/maximum amount of memory)
ACTIVEMQ_OPTS_MEMORY="-Xms64M -Xmx1G"
磁盤(pán)空間問(wèn)題
分配的磁盤(pán)空間不足報(bào)錯(cuò)肩祥,將conf路徑下activemq.xml里的storeUsage limit和tempUsage limit 設(shè)置小點(diǎn)即可
安裝Redis
安裝Redis
#進(jìn)入/usr/local目錄
cd /usr/local
#創(chuàng)建redis目錄
mkdir redis
#把redis壓縮文件放進(jìn)來(lái)后室,然后解壓
tar -zxvf redis-7.0.8.tar.gz
#進(jìn)入redis的根目錄
cd redis-7.0.8/
#檢查是否有g(shù)cc環(huán)境
[root@localhost redis-7.0.8]# gcc --version
gcc (GCC) 7.3.0
Copyright ? 2017 Free Software Foundation, Inc.
本程序是自由軟件;請(qǐng)參看源代碼的版權(quán)聲明混狠。本軟件沒(méi)有任何擔(dān)保岸霹;
包括沒(méi)有適銷(xiāo)性和某一專(zhuān)用目的下的適用性擔(dān)保。
#執(zhí)行make命令進(jìn)行編譯
make
#跳過(guò)make test繼續(xù)執(zhí)行
[root@localhost redis-7.0.8]# make install
cd src && make install
make[1]: 進(jìn)入目錄“/usr/local/redis/redis-7.0.8/src”
CC Makefile.dep
Hint: It's a good idea to run 'make test' ;)
INSTALL redis-server
INSTALL redis-benchmark
INSTALL redis-cli
make[1]: 離開(kāi)目錄“/usr/local/redis/redis-7.0.8/src
#出現(xiàn)上面的情況說(shuō)明安裝成功将饺,默認(rèn)安裝目錄/usr/local/bin
文件介紹
- redis-benchmark:性能測(cè)試工具贡避,可以在自己本子運(yùn)行,看看自己本子性能如何
- redis-check-aof:修復(fù)有問(wèn)題的AOF文件
- redis-check-dump:修復(fù)有問(wèn)題的dump.rdb文件
- redis-sentinel:Redis集群使用
- redis-server:Redis服務(wù)器啟動(dòng)命令
- redis-cli:客戶端予弧,操作入口
修改配置文件
#修改配置文件redis.conf
cd /usr/local/redis/redis-7.0.8
vim redis.conf
# no 表示關(guān)閉保護(hù)模式
protected-mode no
# yes表示以守護(hù)進(jìn)程的方式運(yùn)行(會(huì)占用一個(gè)終端)
daemonize yes
#密碼
requirepass redis
啟動(dòng)
cd /usr/local/bin
#前臺(tái)
redis-server
#后臺(tái)啟動(dòng)
redis-server /usr/local/redis/redis-7.0.8/redis.conf
查看redis進(jìn)程
ps -ef |grep redis
使用redisc-cli鏈接
cd /usr/local/bin
redis-cli
關(guān)閉redis
[root@localhost bin]# redis-cli
127.0.0.1:6379> auth '密碼'
OK
127.0.0.1:6379> ping
PONG
#直接shutdown
127.0.0.1:6379> shutdown
not connected>
#
ps -ef |grep redis
kill -9 進(jìn)程號(hào)
安裝MySQL-RPM
確定版本
cat /etc/kylin-release
Kylin Linux Advanced Server release V10 (Sword)
cat /proc/version
Linux version 4.19.90-24.4.v2101.ky10.x86_64 (KYLINSOFT@localhost.localdomain) (gcc version 7.3.0 (GCC)) #1 SMP Mon May 24 12:14:55 CST 2021
檢查系統(tǒng)是否自帶MySQL或MariaDB
rpm -qa | grep mariadb
rpm -qa | grep mysql
刪除自帶的MySQL和MariaDB
rpm -e {mariadb-server,mariadb,mariadb-errmessage,mariadb-common}
檢查SSL包是否安裝
rpm -qa | grep ssl
#看到這兩個(gè)包就是已安裝
openssl-libs-1.1.1f-4.p01.ky10.x86_64
openssl-1.1.1f-4.p01.ky10.x86_64
注意:這里缺少openssl-devel,需要安裝贸桶,如果有yum,則yum install openssl-devel(未解決,選擇強(qiáng)制安裝的mysql-mysql-community-devel-8.0.28-1.el8.x86_64.rpm)這步跳過(guò)桌肴。
安裝mysql
#進(jìn)入/usr/local目錄
cd /usr/local
#創(chuàng)建redis目錄
mkdir mysql
#把mysql壓縮文件放進(jìn)來(lái)皇筛,然后解壓
tar xvf mysql-8.0.28-1.el8.x86_64.rpm-bundle.tar
只需要安裝以下必選組件即可,注意必須按照先后順序安裝
mysql-community-common-8.0.28-1.el8.x86_64.rpm
mysql-community-client-plugins-8.0.28-1.el8.x86_64.rpm
mysql-community-libs-8.0.28-1.el8.x86_64.rpm
mysql-community-client-8.0.28-1.el8.x86_64.rpm
mysql-community-icu-data-files-8.0.28-1.el8.x86_64.rpm
mysql-community-server-8.0.28-1.el8.x86_64.rpm因?yàn)閛penssl-devel沒(méi)下載導(dǎo)致依賴沖突坠七,通過(guò) --force --nodeps 命令不檢查依賴強(qiáng)制安裝
mysql-community-devel-8.0.28-1.el8.x86_64.rpm
使用以下命令安裝每個(gè)rpm包
rpm -ivh mysql-community-common-8.0.28-1.el8.x86_64.rpm
rpm -ivh mysql-community-client-plugins-8.0.28-1.el8.x86_64.rpm
rpm -ivh mysql-community-libs-8.0.28-1.el8.x86_64.rpm
rpm -ivh mysql-community-client-8.0.28-1.el8.x86_64.rpm
rpm -ivh mysql-community-icu-data-files-8.0.28-1.el8.x86_64.rpm
rpm -ivh mysql-community-server-8.0.28-1.el8.x86_64.rpm
rpm -ivh mysql-community-devel-8.0.28-1.el8.x86_64.rpm --force --nodeps
查詢MySQL的狀態(tài)(Active是狀態(tài))
systemctl status mysqld
#結(jié)果
mysqld.service - MySQL Server
Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: disabled)
Active: inactive (dead)
Docs: man:mysqld(8)
http://dev.mysql.com/doc/refman/en/using-systemd.html
啟動(dòng)MySQL
#啟動(dòng)
systemctl start mysqld
#再次查看狀態(tài)
systemctl status mysqld
#結(jié)果
mysqld.service - MySQL Server
Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: disabled)
Active: active (running) since Wed 2023-02-15 15:13:02 CST; 5s ago
Docs: man:mysqld(8)
http://dev.mysql.com/doc/refman/en/using-systemd.html
Process: 47662 ExecStartPre=/usr/bin/mysqld_pre_systemd (code=exited, status=0/SUCCESS)
Main PID: 47739 (mysqld)
Status: "Server is operational"
Tasks: 38
Memory: 467.0M
CGroup: /system.slice/mysqld.service
└─47739 /usr/sbin/mysqld
2月 15 15:12:54 localhost.localdomain systemd[1]: Starting MySQL Server...
2月 15 15:13:02 localhost.localdomain systemd[1]: Started MySQL Server.
配置MySQL
- MySQL安裝完成后需要對(duì)MySQL做基礎(chǔ)配置水醋,包括首次登錄修改用戶密碼旗笔、數(shù)據(jù)文件位置調(diào)整、redo log大小與數(shù)量調(diào)整拄踪、undo 表空間調(diào)整蝇恶、ibdata表空間調(diào)整
- binlog+errorlog+slowlog+pid+socket等文件調(diào)整、性能參數(shù)調(diào)整惶桐,這些調(diào)整都可以通過(guò)修改my.cnf參數(shù)文件實(shí)現(xiàn)撮弧。
1.修改密碼
首次啟動(dòng)會(huì)為root用戶生成一個(gè)隨機(jī)初始化密碼,并在MySQL的errorlog文件中記錄下來(lái)
1.1找到初始密碼
grep password /var/log/mysqld.log
#結(jié)果:u.9p(09#p1Ft
[root@localhost mysql]# grep password /var/log/mysqld.log
2023-02-15T07:12:59.957598Z 6 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: u.9p(09#p1Ft
1.2使用上面的初始化密碼登錄MySQL(-p不要直接加密碼)
mysql -uroot -p
1.3修改root密碼(大小寫(xiě)姚糊、符號(hào)贿衍、數(shù)字)
alter user user() identified by 'XXXXXXXX';
1.4密碼修改成功后,執(zhí)行以下命令查看MySQL基本信息
#結(jié)果
mysql> status
--------------
mysql Ver 8.0.28 for Linux on x86_64 (MySQL Community Server - GPL)
Connection id: 9
Current database:
Current user: root@localhost
SSL: Not in use
Current pager: stdout
Using outfile: ''
Using delimiter: ;
Server version: 8.0.28
Protocol version: 10
Connection: Localhost via UNIX socket
Server characterset: utf8mb4
Db characterset: utf8mb4
Client characterset: utf8mb4
Conn. characterset: utf8mb4
UNIX socket: /var/lib/mysql/mysql.sock
Binary data as: Hexadecimal
Uptime: 17 min 41 sec
Threads: 3 Questions: 12 Slow queries: 0 Opens: 140 Flush tables: 3 Open tables: 56 Queries per second avg: 0.011
--------------
2.修改my.cnf參數(shù)文件
my.cnf默認(rèn)會(huì)在/etc目錄下自動(dòng)生成救恨,需要編輯此文件以調(diào)整各種文件配置和性能配置參數(shù)贸辈。
2.1在修改前要關(guān)閉MySQL服務(wù)
systemctl stop mysqld
2.2編輯/etc/my.cnf文件
vim /etc/my.cnf
按如下內(nèi)容編輯my.cnf,系統(tǒng)和用戶表空間放在data目錄中肠槽,undo 表空間放在undo目錄中擎淤,binlog開(kāi)啟GTID MODE并將binlog放在log目錄中,redo log放在redo目錄中并開(kāi)啟redo歸檔將歸檔日志放在arch目錄中秸仙。
[mysql]
socket=/data/mysql/data/mysqld.sock
[mysqld]
###base config###
server-id=211
datadir=/data/mysql/data
socket=/data/mysql/data/mysqld.sock
pid-file=/data/mysql/data/mysqld.pid
log-error=/data/mysql/log/mysqld.log
###query config###
join_buffer_size = 128M
sort_buffer_size = 16M
read_buffer_size = 16M
read_rnd_buffer_size = 8M
###open table config###
table_open_cache=2000
table_open_cache_instances=16
###connection config###
max_connections=2000
thread_cache_size=200
###binlog config###
log_bin=/data/mysql/log/binlog
log_bin_index=/data/mysql/log/binlog.index
binlog_format=ROW
max_binlog_size=1G
binlog_cache_size=16M
binlog_expire_logs_seconds=604800
enforce_gtid_consistency=ON
gtid_mode=ON
###general log config###
general_log=OFF
general_log_file=/data/mysql/log/mysqld.gnl
###slow query config###
log_output=FILE
long_query_time=1
slow_query_log=ON
slow_query_log_file=/data/mysql/log/mysqld.slow
###innodb redo log config###
innodb_log_file_size=1G
innodb_log_files_in_group=3
innodb_log_buffer_size=16M
innodb_log_group_home_dir=/data/mysql/redo
innodb_redo_log_archive_dirs=/data/mysql/arch
###innodb undo log config###
#innodb_max_undo_log_size=1G
#innodb_undo_tablespaces=2
innodb_undo_directory=/data/mysql/undo
###innodb config###
#innodb_data_file_path=ibdata1:12M:autoextend
#innodb_temp_data_file_path=ibtmp1:12M:autoextend
#innodb_temp_tablespaces_dir=./#innodb_temp/
#innodb_autoextend_increment=64
innodb_buffer_pool_size=8G
innodb_open_files=10000
open_files_limit=10000
2.3移動(dòng)MySQL數(shù)據(jù)文件
my.cnf配置文件中調(diào)整了undo嘴拢、redo、binlog等文件的存放位置寂纪,因此需要將MySQL安裝后默認(rèn)數(shù)據(jù)目錄下的文件移動(dòng)到與my.cnf對(duì)應(yīng)的目錄下炊汤。
2.3.1創(chuàng)建與my.cnf中配置對(duì)應(yīng)的目錄
mkdir /data/mysql/{data,redo,undo,arch,log} -p
2.3.2移動(dòng)文件到對(duì)應(yīng)的目錄
mv /var/lib/mysql/undo* /data/mysql/undo
mv /var/lib/mysql/ib_logfile* /data/mysql/redo
mv /var/lib/mysql/* /data/mysql/data
2.3.3修改目錄權(quán)限
chown mysql.mysql /data/mysql -R
2.3.4啟動(dòng)MySQL服務(wù)
systemctl start mysqld
3.測(cè)試服務(wù)
3.1查看MySQL服務(wù)狀態(tài)
systemctl status mysqld
3.2登錄MySQL
mysql -uroot -p
3.3使用sql命令
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| sys |
+--------------------+
4 rows in set (0.00 sec)
安裝posgresql
安裝前可以先進(jìn)行用戶以及用戶組的配置
# 新增用戶組
groupadd postgres
# 創(chuàng)建用戶組內(nèi)用戶
useradd -g postgres postgres
# 修改用戶密碼
passwd postgres
#進(jìn)入/usr/local目錄
cd /usr/local
#創(chuàng)建posgresql目錄
mkdir posgresql
#把posgresql壓縮文件放進(jìn)來(lái),然后解壓
tar -zxvf postgresql-11.7.tar.gz
#進(jìn)入pg的根目錄
cd postgresql-11.7/
#暫時(shí)忽略readline-devel
./configure --without-readline
make
make install
#進(jìn)入到解壓后的目錄下的contrib文件夾
cd contrib
make
make install
安裝完成后進(jìn)行數(shù)據(jù)庫(kù)data配置
mkdir -p /usr/local/pgsql/data # 創(chuàng)建數(shù)據(jù)存儲(chǔ)目錄
chown -R postgres:postgres /usr/local/pgsql # 用戶/用戶組目錄授權(quán)
修改環(huán)境變量
su - postgres
cd /home/postgres
vi .bash_profile
#bash_profile文件中加入以下
PATH=/usr/local/pgsql/bin:$PATH
export PATH
LD_LIBRARY_PATH=/usr/local/pgsql/lib
export LD_LIBRARY_PATH
export PGHOME=/usr/local/pgsql
export PGDATA=/usr/local/pgsql/data
#保存后使環(huán)境變量立即生效弊攘,否則initdb命令會(huì)找不到
source .bash_profile
初始化數(shù)據(jù)庫(kù)
initdb -D /usr/local/pgsql/data
#logfile需要在postgres的用戶目錄下創(chuàng)建
cd /home/postgres
pg_ctl -D /usr/local/pgsql/data -l logfile start
#查看5432端口是否已經(jīng)啟動(dòng)
netstat -nltp|grep 5432
添加postgresql至服務(wù)(這個(gè)我配置后切換用戶還需要手動(dòng)刷新抢腐,不知道怎么回事)
su root
cd /usr/local/postgresql/postgresql-11.7/contrib/start-scripts
chmod a+x linux
cp linux /etc/init.d/postgresql
#此時(shí)就可以使用 /etc/init.d/postgresql stop 來(lái)停止postgresql.也可以使用:service postgresql start 來(lái)啟動(dòng)postgresql
#設(shè)置服務(wù)開(kāi)機(jī)啟動(dòng)
chkconfig --add postgresql
配置數(shù)據(jù)庫(kù)允許連接
cd /usr/local/pgsql/data
vim postgresql.conf
#修改以下配置
listen_addresses = '*'
vim pg_hba.conf
#添加以下配置 注意trust是不能在生產(chǎn)服務(wù)使用的,會(huì)有弱口令問(wèn)題
#參考:https://blog.csdn.net/songyundong1993/article/details/124264877
#連接方式 數(shù)據(jù)庫(kù) 用戶名 IP地址 客戶端認(rèn)證方式
host all all 0.0.0.0/0 trust
# 修改完成后可以進(jìn)行服務(wù)的重啟
pg_ctl restart
進(jìn)入數(shù)據(jù)庫(kù)
#psql -h host -p port -U username -d yourdatabase
psql
#測(cè)試
#查詢所有用戶
select rolname,oid from pg_roles;
鏈接數(shù)據(jù)庫(kù)
#如果服務(wù)器是開(kāi)啟防火墻狀態(tài)的請(qǐng)注意 將數(shù)據(jù)庫(kù)的端口開(kāi)放否則鏈接會(huì)報(bào)錯(cuò)
命令:firewall-cmd --add-service=postgresql --permanent
# 5432為postgresql端口
命令:firewall-cmd --zone=public --add-port=5432/tcp --permanent
命令:firewall-cmd --reload
# 查看防火墻開(kāi)放端口
firewall-cmd --zone=public --list-ports
安裝timescaledb
mkdir /usr/local/timescaledb/
cd /usr/local/timescaledb/
#解壓下載文件
tar -zxvf timescaledb-2.3.1.tar.gz
cd timescaledb-2.3.1/
#我安裝pgsql時(shí)未安裝openssl襟交,故選擇./bootstrap -BUSE_OPENSSL=0
./bootstrap -DUSE_OPENSSL=0 -DREGRESS_CHECKS=OFF
#編譯
cd ./build && make
make install
#添加共享庫(kù)到pgsql的配置文件
vi /usr/local/pgsql/data/postgresql.conf
#寫(xiě)入以下
shared_preload_libraries = 'timescaledb'
#切換用戶postgres
su – postgres
#啟動(dòng)pg,執(zhí)行以下命令
pg_ctl start
psql
create extension if not exists timescaledb cascade;
出現(xiàn)如圖所示則安裝成功迈倍。
安裝openSSL(我是把自帶的老版本刪除后安裝的)
cd /usrl/local
mkdir openssl
cd openssl
#把壓縮包拷貝進(jìn)來(lái),解壓
tar -zxvf openssl-3.1.0.tar.gz
cd openssl-3.1.0.tar.gz
#添加openssl配置
./config shared --prefix=/usr/local/openssl --openssldir=/usr/lib/openssl
#編譯
make && make install
./config -t
make depend
cd /usr/local
ln -s openssl ssl
echo "/usr/local/openssl/lib64" | sudo tee -a /etc/ld.so.conf
ldconfig
#設(shè)置環(huán)境變量
vim /etc/profile
#添加一下
export OPENSSL=/usr/local/openssl/bin
export PATH=$OPENSSL:$PATH:$HOME/bin
#刷新配置
source /etc/profile
#查看版本
openssl version