美文网首页
Ubuntu环境配置

Ubuntu环境配置

作者: JustinZhang_ | 来源:发表于2023-01-28 21:10 被阅读0次

1. MySQL

  • 下载MySQL,地址:MySQL :: Download MySQL Community Server
  • 版本:previous GA versions - Ubuntu Linux - Ubuntu Linux 18.04 (x86, 64-bit)- DEB Bundle
  • 解压tar包,解压出的以下两个包可以删除,不安装
    • mysql-community-test*
    • mysql-testsuite*
  • 安装前依赖
apt install libtinfo5 libmecab2 libaio1
  • 安装
dpkg -i mysql-*.deb
  • 过程中会出现界面让你设置root密码,输入两次即可
  • 默认配置文件路径:/etc/mysql/mysql.conf.d/mysqld.cnf
  • 启停脚本
systemctl restart/status/start/stop mysql
  • 配置编码&表名不区分大小写
[client]
default-character-set = utf8

[mysql]
default-character-set = utf8

[mysqld]
pid-file        = /var/run/mysqld/mysqld.pid
socket          = /var/run/mysqld/mysqld.sock
datadir         = /var/lib/mysql
log-error       = /var/log/mysql/error.log
# By default we only accept connections from localhost
bind-address    = 192.168.9.3
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0

character-set-server = utf8
lower_case_table_names = 1
  • 配置用户远程访问权限
# 修改访问权限
grant all privileges on *.* to root@'%' identified by '********' with grant option;
# 刷新权限
flush privileges;
port = 3306
# 一般采用IP最后一段,主主不得一致
server-id=1
# 启动MySQL二进制日志
log-bin=mysql-bin
# 指定同步的数据库名,如果有多个可以分别声明,过滤的压力在master节点上,master本身配置
binlog-do-db=test01
binlog-do-db=test02
# 指定不同步的数据库,如果有多个可以分别声明,过滤的压力在master节点上,master本身配置
binlog-ignore-db=mysql
binlog-ignore-db=information_schema
# 从服务器配置,指定同步、忽略的数据库
replicate-do-db=
replicate-ignore-db=

# 此段配置适用于两台主主同时服务的情况,keepalived+MySQL双主的情况无需此步配置
# 步进值,一般有n台主机就填n
auto_increment_increment=2
# 自动增长的起点,两台主主必须不一致
auto_increment_offset=1

# 默认情况下MySQL会阻止主从同步的数据库function的创建,这会导致我们在导入sql文件时如果有创建function或者使用function的语句将会报错
log-bin-trust-function-creators=1

# 从库作为其它从库的主库时,此参数必须添加;因此主主配置也需要添加
log-slave-updates=1

# 确保binlog日志写入后与硬盘同步,
sync_binlog=1

# 定在slave认为连接断开、中止读取并尝试重新连接之前,slave等待来自master的更多数据或心跳信号的秒数。默认值为60秒(一分钟)。在MySQL5.7.7之前,默认值是3600秒(一小时)。
slave-net-timeout

#
sql_mode=
# 配置此项后,如果创建表结构时指定了不存在的引擎,则报错;不配置,则使用innodb;
NO_ENGINE_SUBSTITUTION
# 对innodb来说,是同样的含义,严格模式;插入数据类型与字段不兼容,则报错回滚;
STRICT_TRANS_TABLES STRICT_ALL_TABLES

# 全局事务ID特性
gtid-mode=on

# 启用后可以在binlog日志中看到语句的原始sql
# mysqlbinlog -vv mysql-bin.000001
# mysqlbinlog --base64-output=decode-rows -vv mysql-bin.000001 解决乱码问题
binlog_rows_query_log_events=1
  • repl用户需要两边分别创建赋权;

2. Docker

  • 下载安装
# 卸载旧版本
apt remove docker docker-engine docker.io containerd runc
# 安装基础依赖
apt install ca-certificates curl gnupg
# 添加Docker GPG Key
mkdir -m 0755 -p /etc/apt/keyrings
# 拉取 指定输出位置
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | gpg --dearmor -o /etc/apt/keyrings/docker.gpg
# 等价
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | gpg --dearmor > /etc/apt/keyrings/docker.gpg
# 添加APT Repository
echo "deb [arch=amd64 signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu jammy stable" > /etc/apt/sources.list.d/docker.list
# 更新
apt update
# 安装
apt install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
# 验证
docker version
  • 镜像配置
# 创建daemon.json
touch /etc/docker/daemon.json
vim /etc/docker/daemon.json
# 内容如下
{ "registry-mirrors": ["https://hub-mirror.c.163.com/"] }
# 重启
systemctl daemon-reload
systemctl restart docker

3. zookeeper

  • 单机版
# 配置
tickTime=2000
initLimit=10
dataDir=/home/justin/apache-zookeeper-3.5.9/data
clientPort=2181
# 启动
bin/zkServer.sh start
# 验证
telnet localhost 2181
srvr
  • 集群
# 配置
tickTime=2000
initLimit=20
syncLimit=5
dataDir=/home/justin/apache-zookeeper-3.5.9/data
server.91=192.168.2.91:2181:2182
server.92=192.168.2.92:2181:2182
server.93=192.168.2.93:2181:2182
# 在dataDir里面创建一个myid文件,与server.id保持一致

4. kafka

  • 单机版
# 配置
broker.id=91
log.dirs=/home/justin/kafka_2.13-2.5.1/logs
zookeeper.connect=localhost:2181/kafka
listeners=PLAINTEXT://192.168.2.91:9092
advertised.listeners=PLAINTEXT://192.168.2.91:9092
# 启动
./kafka-server-start.sh -daemon /home/justin/kafka_2.13-2.5.1/config/server.properties
  • 集群版类似

  • 操作

# 创建主题
./kafka-topics.sh --bootstrap-server localhost:9092 --create --topic hades-log
# 描述主题
./kafka-topics.sh --bootstrap-server localhost:9092 --describe --topic hades-log
# 设置主题过期时间
./kafka-configs.sh --bootstrap-server localhost:9092 --alter --entity-type topics --entity-name hades-log --add-config 'delete.retention.ms=3600000'


# 发送消息
./kafka-console-producer.sh --bootstrap-server localhost:9092 --topic hades-log
# 读取消息
./kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic hades-log --from-beginning

5. redis

  • 编译安装(非安装为系统服务)
# 编译环境
sudo apt install make gcc
# 先编译依赖
cd redis-5.0.14-src/deps
make hiredis lua jemalloc linenoise
# 指定安装目录
make PREFIX=/home/justin/redis-5.0.14 install
# 编译出错/失败的清理
make distclean && make clean
# 此种安装方式非安装为系统服务
  • 单节点配置
# 建立日志及数据目录
mkdir -p /home/justin/redis-5.0.14/data
mkdir -p /home/justin/redis-5.0.14/log
# 主要配置内容
bind 127.0.0.1 192.168.2.91
protected-mode no
port 6379
daemonize yes
logfile "/home/justin/redis-5.0.14/log/redis.log"
dir /home/justin/redis-5.0.14/data
maxmemory 128MB
# 启动
bin/redis-server conf/redis.conf

6. mongoDB

# 安装依赖
sudo apt-get install libcurl4 openssl liblzma5

# mongoDB compass 依赖
apt install -y libgconf-2-4

用户配置

# 关闭安全认证security.authorization=disabled
# 创建root用户
use admin;
db.createUser({user: 'root', pwd: 'rootPwd', roles: ["root"]});
# 创建justin用户
db.createUser({user: 'justin', pwd: 'justinPwd', roles: ["readWriteAnyDatabase"]})
# 创建monitor用户
db.createUser({user: 'monitor', pwd: 'monitorPwd', roles: ["readAnyDatabase"]})
# 开启安全认证security.authorization=enabled

# 登陆校验方式一
# 登陆后
use admin;
db.auth('root', 'rootPwd')
# 登陆校验方式二
# 登陆时
mongo dbName -u userName -p

7. Docker Desktop

  • 配置Docker仓库
# 安装Docker依赖
sudo apt update
sudo apt install -y ca-certificates curl gnupg lsb-release
# 配置官方仓库
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
# 更新apt信息
sudo apt update
sudo apt install ./docker-desktop-4.16.2-amd64.deb
  • 配置Docker镜像仓库
{
  "registry-mirrors": ["https://hub-mirror.c.163.com/"]
}

相关文章

网友评论

      本文标题:Ubuntu环境配置

      本文链接:https://www.haomeiwen.com/subject/kvaehdtx.html