首页 文章 精选 留言 我的

精选列表

搜索[部署],共10000篇文章
优秀的个人博客,低调大师

MariaDB10自动化安装部署

去MariaDB官网下载MariaDB本文用的是MariaDB 10.1.16 https://downloads.mariadb.org 选择二进制版本,下载到/root目录下 mariadb-10.1.16-linux-x86_64.tar.gz 开始安装 [root@HE3 ~]# cat mariadb_auto_install.sh [root@HE3 ~]# cat mariadb_auto_install.sh [root@HE3 ~]# cat mariadb_auto_install.sh ######二进制自动安装数据库脚本root密码MANAGER将脚本和安装包放在/root目录即可############### ######数据库目录/usr/local/mysql############ ######数据目录/data/mysql############ ######日志目录/log/mysql############ ######端口号默认3306其余参数按需自行修改############ ################## #author:rrhelei@126.com# ################## #!/bin/bash PATH=/bin:/sbin:/usr/bin:/usr/sbin:/opt/bin:/opt/sbin:~/bin exportPATH #Checkifuserisroot if[$(id-u)!="0"];then echo"Error:Youmustberoottorunthisscript,pleaseuseroottoinstall" exit1 fi clear echo"=========================================================================" echo"Atooltoauto-compile&installMariaDB10.1.16onRedhat/CentOSLinux" echo"=========================================================================" cur_dir=$(pwd) #setmysqlrootpassword echo"===========================" mysqlrootpwd="MANAGER" echo-e"Pleaseinputtherootpasswordofmysql:" read-p"(Defaultpassword:MANAGER):"mysqlrootpwd if["$mysqlrootpwd"=""];then mysqlrootpwd="MANAGER" fi echo"===========================" echo"MySQLrootpassword:$mysqlrootpwd" echo"===========================" #whichMySQLVersiondoyouwanttoinstall? echo"===========================" isinstallmysql56="n" echo"InstallMariaDB10.1.16,Pleaseinputy" read-p"(Pleaseinputy,n):"isinstallmysql56 case"$isinstallmysql56"in y|Y|Yes|YES|yes|yES|yEs|YeS|yeS) echo"YouwillinstallMySQL5.6.25" isinstallmysql56="y" ;; *) echo"INPUTerror,YouwillexitinstallMariaDB10.1.16" isinstallmysql56="n" exit esac get_char() { SAVEDSTTY=`stty-g` stty-echo sttycbreak #ddif=/dev/ttybs=1count=12>/dev/null stty-raw sttyecho stty$SAVEDSTTY } echo"" echo"Pressanykeytostart...orPressCtrl+ctocancel" char=`get_char` #Initializetheinstallationrelatedcontent. functionInitInstall() { cat/etc/issue uname-a MemTotal=`free-m|grepMem|awk'{print$2}'` echo-e"\nMemoryis:${MemTotal}MB" #Settimezone rm-rf/etc/localtime ln-s/usr/share/zoneinfo/Asia/Shanghai/etc/localtime #DeleteOldMysqlprogram rpm-qa|grepmysql rpm-emysql #DisableSeLinux if[-s/etc/selinux/config];then sed-i's/SELINUX=enforcing/SELINUX=disabled/g'/etc/selinux/config fi setenforce0 } #Installationofdependonandoptimizationoptions. functionInstallDependsAndOpt() { cd$cur_dir cat>>/etc/security/limits.conf<<EOF *softnproc65535 *hardnproc65535 *softnofile65535 *hardnofile65535 EOF echo"fs.file-max=65535">>/etc/sysctl.conf } #InstallMySQL functionInstallMySQL56() { echo"============================InstallMariaDB10.1.16==================================" cd$cur_dir #Backupoldmy.cnf #rm-f/etc/my.cnf if[-s/etc/my.cnf];then mv/etc/my.cnf/etc/my.cnf.`date+%Y%m%d%H%M%S`.bak fi #mysqldirectoryconfiguration groupaddmysql-g512 useradd-u512-gmysql-s/sbin/nologin-d/home/mysqlmysql tarxvf/root/mariadb-10.1.16-linux-x86_64.tar.gz mv/root/mariadb-10.1.16-linux-x86_64/usr/local/mysql mkdir-p/data/mysql mkdir-p/log/mysql chown-Rmysql:mysql/data/mysql chown-Rmysql:mysql/usr/local/mysql chown-Rmysql:mysql/log SERVERID=`ifconfigeth0|grep"inetaddr"|awk'{print$2}'|awk-F.'{print$3$4}'` cat>>/etc/my.cnf<<EOF [client] port=3306 socket=/tmp/mysql.sock default-character-set=utf8 [mysql] default-character-set=utf8 [mysqld] port=3306 socket=/tmp/mysql.sock basedir=/usr/local/mysql datadir=/data/mysql open_files_limit=3072 back_log=103 max_connections=800 max_connect_errors=100000 table_open_cache=512 external-locking=FALSE max_allowed_packet=32M sort_buffer_size=2M join_buffer_size=2M thread_cache_size=51 query_cache_size=32M tmp_table_size=96M max_heap_table_size=96M slow_query_log=1 slow_query_log_file=/log/mysql/slow.log log-error=/log/mysql/error.log long_query_time=1 server-id=$SERVERID log-bin=/log/mysql/mysql-bin sync_binlog=1 binlog_cache_size=4M max_binlog_cache_size=8M max_binlog_size=1024M expire_logs_days=60 key_buffer_size=32M read_buffer_size=1M read_rnd_buffer_size=16M bulk_insert_buffer_size=64M character-set-server=utf8 default-storage-engine=InnoDB binlog_format=row innodb_buffer_pool_dump_at_shutdown=1 innodb_buffer_pool_load_at_startup=1 binlog_rows_query_log_events=1 explicit_defaults_for_timestamp=1 #log_slave_updates=1 #gtid_mode=on #enforce_gtid_consistency=1 #innodb_write_io_threads=8 #innodb_read_io_threads=8 #innodb_thread_concurrency=0 transaction_isolation=REPEATABLE-READ innodb_additional_mem_pool_size=16M innodb_buffer_pool_size=512M #innodb_data_home_dir= innodb_data_file_path=ibdata1:1024M:autoextend innodb_flush_log_at_trx_commit=1 innodb_log_buffer_size=16M innodb_log_file_size=512M innodb_log_files_in_group=2 innodb_max_dirty_pages_pct=50 innodb_file_per_table=1 innodb_locks_unsafe_for_binlog=0 wait_timeout=14400 interactive_timeout=14400 skip-name-resolve [mysqldump] quick max_allowed_packet=32M EOF /usr/local/mysql/scripts/mysql_install_db--basedir=/usr/local/mysql--datadir=/data/mysql--defaults-file=/etc/my.cnf--user=mysql cp/usr/local/mysql/support-files/mysql.server/etc/init.d/mysqld chmod700/etc/init.d/mysqld chkconfig--addmysql chkconfig--level2345mysqldon cat>>/etc/ld.so.conf.d/mysql-x86_64.conf<<EOF /usr/local/mysql/lib EOF ldconfig if[-d"/proc/vz"];then ulimit-sunlimited fi /etc/init.d/mysqldstart cat>>/etc/profile<<EOF exportPATH=$PATH:/usr/local/mysql/bin exportLD_LIBRARY_PATH=/usr/local/mysql/lib EOF /usr/local/mysql/bin/mysqladmin-urootpassword$mysqlrootpwd cat>/tmp/mysql_sec_script<<EOF usemysql; deletefrommysql.userwhereuser!='root'orhost!='localhost'; flushprivileges; EOF /usr/local/mysql/bin/mysql-uroot-p$mysqlrootpwd-hlocalhost</tmp/mysql_sec_script #rm-f/tmp/mysql_sec_script /etc/init.d/mysqldrestart source/etc/profile echo"============================MariaDB10.1.16installcompleted=========================" } functionCheckInstall() { echo"=====================================Checkinstall===================================" clear ismysql="" echo"Checking..." if[-s/usr/local/mysql/bin/mysql]&&[-s/usr/local/mysql/bin/mysqld_safe]&&[-s/etc/my.cnf];then echo"MySQL:OK" ismysql="ok" else echo"Error:/usr/local/mysqlnotfound!!!MySQLinstallfailed." fi if["$ismysql"="ok"];then echo"InstallMariaDB10.1.16completed!enjoyit." echo"=========================================================================" netstat-ntl else echo"Sorry,FailedtoinstallMySQL!" echo"Youcantail/root/mysql-install.logfromyourserver." fi } #Theinstallationlog InitInstall2>&1|tee/root/mysql-install.log CheckAndDownloadFiles2>&1|tee-a/root/mysql-install.log InstallDependsAndOpt2>&1|tee-a/root/mysql-install.log InstallMySQL562>&1|tee-a/root/mysql-install.log CheckInstall2>&1|tee-a/root/mysql-install.log [root@HE3 ~]# mysql -uroot -pEnter password: Welcome to the MariaDB monitor. Commands end with ; or \g.Your MariaDB connection id is 6Server version: 10.1.16-MariaDB MariaDB Server Copyright (c) 2000, 2016, Oracle, MariaDB Corporation Ab and others. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. MariaDB [(none)]> show databases;+--------------------+| Database |+--------------------+| information_schema || mysql || performance_schema || test |+--------------------+4 rows in set (0.00 sec) 至此,mariadb-10.1.16安装成功

优秀的个人博客,低调大师

Gartner:64% 受访者不希望客服系统部署 AI

市场调查机构 Gartner 发布的一份基于5728 名客户的调查报告指出,64% 的受访客户不希望客服使用 AI。且如果发现某家公司将使用 AI 进行客户服务,53% 的客户会考虑转而选择竞争对手。 Gartner 客户服务与支持业务高级研究主管 Keith McIntosh 表示: “60% 的客户服务和支持领导者面临着在其职能中采用 AI 的压力。但他们不能忽视对 AI 使用的担忧,尤其是当它可能意味着失去客户时。” 消费者对 AI 客服的最大担忧是,联系人工客服会变得越来越困难,其次是 AI 会取代工作岗位,以及 AI 会提供错误的答案。 McIntosh 表示: “一旦客户用尽了自助服务选项,他们就会准备联系人工客服。许多客户担心 GenAI 只会成为他们和客服人员之间的另一个障碍。服务和支持负责人有责任向客户展示 AI 可以简化服务体验。服务机构必须确保 GenAI 功能遵循服务旅程设计的最佳实践,从而建立客户对 AI 的信任。客户必须知道,融入 AI 的旅程将提供更好的解决方案和无缝指导,包括在必要时将他们与人工联系起来。 “例如,AI 聊天机器人必须告知客户,如果 AI 无法提供解决方案,它们会将客户转接给客服人员。然后,聊天机器人必须无缝转换为客服人员聊天,从聊天机器人停止的地方继续聊天。这样,客户就可以相信,他们将能够使用 AI 渠道高效地找到解决方案。”

优秀的个人博客,低调大师

利用 OpenNJet HA Copilot 实现高可用部署 (二)

NGINX 向云原生演进,All inOpenNJet 配置同步 上一篇文章介绍了OpenNJet如何实现高可用配置,这一篇文章介绍下高可用模式下实现集群配置同步的功能。OpenNJet有很多动态配置的模块,这些动态的配置可以利用我们HA模块实现在主备节点之间进行同步。 主节点通过动态配置接口(声明式api或者命令式api)动态更新配置,然后backup节点能够及时同步这些配置。主节点宕机,backup节点动态更新配置,再主节点重新起来后,也能够及时同步更新的配置。最终保证主备节点都能够保证彼此配置的最新同步。 测试 配置说明 下面的测试场景,均以一台主节点,一台backup节点进行测试 主节点: 192.168.40.136 broker进程配置如下 C++ #配置主节点监听端口和ip listener 1883 192.168.40.136 #配置本地socket地址,用于本地worker进程通信 listener 0 /root/bug/njet1.0/data/mosquitto.sock log_dest file logs/mosquitto.log log_type debug log_type information log_type error log_type warning log_type notice allow_anonymous true persistence true autosave_on_changes true autosave_interval 1 persistence_location /root/bug/njet1.0/data/ backup节点:192.168.40.91 broker进程配置如下: C++ #配置backup节点监听端口和ip listener 1883 192.168.40.91 #配置本地socket地址,用于本地worker进程通信 listener 0 /root/bug/njet1.0/data/mosquitto.sock #配置需要连接的主节点地址信息 connection bridge-backup address 192.168.40.136:1883 #topic主题过滤掉get相关接口请求 topic /dyn/# both 0 topic /ins/# both 0 log_dest file logs/mosquitto.log log_type debug log_type information log_type error log_type warning log_type notice allow_anonymous true persistence true autosave_on_changes true autosave_interval 1 persistence_location /root/bug/njet1.0/data/ 命令式API消息同步 主节点更新消息,backup节点同步消息 往主节点新增一个location /clb,观察backup节点是否同步新增 往主节点通过动态location接口add一个location 通过其他模块get接口查询,可发现主节点刚才的location已经存在 从backup节点查看,发现也存在该location,同步成功 backup节点更新消息,主节点同步消息 往backup节点新增一个location /clb2,观察主节点是否同步新增 往backup节点通过动态location接口add一个location 通过其他模块get接口查询,可发现backup节点刚才的location已经存在 从主节点查看,发现也存在该location,同步成功 声明式API消息同步 主节点更新消息,backup节点同步消息 通过修改location /clb 下limit conn个数进行验证 主节点修改前:conn数量为100 修改主节点该值为200 观察backup节点的值,发现已经为200,同步成功 backup节点更新消息,主节点同步消息 通过修改location /clb 下limit conn个数进行验证 backup点修改为300 观察主机点,也为300,同步成功 主节点退出, backup节点配置reload后不会消失 stop掉主节点,观察backup节点配置 观察backup节点,仍然是300 将backup节点的值修改为400,然后将backup节点reload,重新get发现值还为400 主节点重新加入,会同步backup节点消息 start主节点,观察主节点配置是否会同步backup节点的动态配置 重新启动主节点、 观察主节点的值,已经为400,说明同步成功 已知问题 在有命令式api 比如location动态删除的消息时,会同步失败 OpenNJet 最早是基于 NGINX1.19 基础 fork 并独立演进,具有高性能、稳定、易扩展的特点,同时也解决了 NGINX 长期存在的难于动态配置、管理功能影响业务等问题。邮件组官网

资源下载

更多资源
腾讯云软件源

腾讯云软件源

为解决软件依赖安装时官方源访问速度慢的问题,腾讯云为一些软件搭建了缓存服务。您可以通过使用腾讯云软件源站来提升依赖包的安装速度。为了方便用户自由搭建服务架构,目前腾讯云软件源站支持公网访问和内网访问。

Nacos

Nacos

Nacos /nɑ:kəʊs/ 是 Dynamic Naming and Configuration Service 的首字母简称,一个易于构建 AI Agent 应用的动态服务发现、配置管理和AI智能体管理平台。Nacos 致力于帮助您发现、配置和管理微服务及AI智能体应用。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据、流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。

Rocky Linux

Rocky Linux

Rocky Linux(中文名:洛基)是由Gregory Kurtzer于2020年12月发起的企业级Linux发行版,作为CentOS稳定版停止维护后与RHEL(Red Hat Enterprise Linux)完全兼容的开源替代方案,由社区拥有并管理,支持x86_64、aarch64等架构。其通过重新编译RHEL源代码提供长期稳定性,采用模块化包装和SELinux安全架构,默认包含GNOME桌面环境及XFS文件系统,支持十年生命周期更新。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。

用户登录
用户注册