hyj1412's Blog

record, write and share.


  • Home

  • Tags

  • Categories

  • Archives

docker部署nextcloud

Posted on 2019-08-03 | Edited on 2019-09-23 | In docker

docker

docker 介绍

Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从 Apache2.0 协议开源

Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。

docker 安装

基于 centos7 服务器

  • 卸载旧版本
1
yum remove docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-selinux docker-engine-selinux docker-engine
  • 安装必要的工具
1
yum install -y yum-utils device-mapper-persistent-data lvm2
  • 安装软件源
1
yum-config-manager --add-repo=https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
Read more »

sftp限制用户访问目录

Posted on 2019-06-01 | In linux

场景需求:
新增一个用户last,该用户不能 ssh 登录,
但是可以访问自己的家目录,且只能操作自己的家目录

先以 root 账号登录

终端工具登录即可

创建用户、设置密码

1
2
useradd -s /sbin/nologin -m last
passwd last

设置用户家目录以及权限

1
2
3
4
# 修改家目录的属主是root,属组是last
chown root:last /home/last
# 修改last的家目录权限
chmod 755 /home/last

家目录下创建 asset 目录

last 用户 sftp 连接之后的操作都发生在 asset 子目录下

1
2
3
cd /home/last
mkdir asset
chown last:last asset

修改 /etc/ssh/sshd_config 配置文件

1
2
3
4
5
6
7
Subsystem sftp internal-sftp

Match User last
ChrootDirectory /home/last
X11Forwarding no
AllowTcpForwarding no
ForceCommand internal-sftp

最后,重启 sshd 生效

mysql创建用户与授权

Posted on 2019-04-15 | In mysql

创建用户

命令

1
CREATE USER 'username'@'host' IDENTIFIED BY 'password';

说明

  • username:你将创建的用户名
  • host:指定该用户在哪个主机上可以登陆,如果是本地用户可用localhost,如果想让该用户可以从任意远程主机登陆,可以使用通配符%
  • password:该用户的登陆密码,密码可以为空,如果为空则该用户可以不需要密码登陆服务器

例子

1
2
3
4
5
CREATE USER 'tom'@'localhost' IDENTIFIED BY '123456';
CREATE USER 'veryuser'@'192.168.1.101_' IDENDIFIED BY '123456';
CREATE USER 'veryuser'@'%' IDENTIFIED BY '123456';
CREATE USER 'veryuser'@'%' IDENTIFIED BY '';
CREATE USER 'veryuser'@'%';

授权

命令

1
GRANT privileges ON databasename.tablename TO 'username'@'host'

说明

  • privileges:用户的操作权限,如SELECT,INSERT,UPDATE等,如果要授予所的权限则使用ALL
  • databasename:数据库名
  • tablename:表名,如果要授予该用户对所有数据库和表的相应操作权限则可用 * 表示,如 *.*

例子

1
2
GRANT SELECT, INSERT ON test.user TO 'veryuser'@'%';
GRANT ALL ON *.* TO 'veryuser'@'%';
Read more »

mysql导入导出

Posted on 2019-04-15 | In mysql

数据导入

  • 方法 1:

mysql 命令导入

1
2
# 输入后回车会提示输入密码
mysql -u username -p databasename < backupfile.sql
  • 方法 2:

source 命令导入数据库需要先登录到数库终端:

1
2
3
4
5
6
7
8
# 创建数据库
mysql> create database cloud;
# 使用已创建的数据库
mysql> use cloud;
# 设置编码 utf8mb4 utf8
mysql> set names utf8mb4;
# 导入备份数据库(绝对路径)
mysql> source /home/download/backupfile.sql

数据导出

  • 导出表结构和数据
1
2
3
4
# 输入之后回车提示输入密码
mysqldump -u username -p databasename > ~/Downloads/backupfile.sql
# 或者 用户名、密码紧挨着参数-u -p
mysqldump -u'username' -p'password' databasename > ~/Downloads/backupfile.sql
  • 只导出表结构
1
mysqldump -u username -p -d databasename > ~/Downloads/backupfile.sql

mysql复制表

Posted on 2019-04-14 | In mysql

复制表结构

方法 1:

1
2
mysql> create table users_bak like users;
Query OK, 0 rows affected (0.03 sec)

方法 2:

1
2
3
mysql> create table users_bak select * from users limit 0;
Query OK, 0 rows affected (0.00 sec)
Records: 0 Duplicates: 0 Warnings: 0

方法 3:

1
2
3
4
5
6
7
8
9
10
11
# 显示创表的sql
mysql> show create table users \G;
*************************** 1. row ***************************
Table: users
Create Table: CREATE TABLE `users` ( //改表名
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`name` varchar(60) NOT NULL DEFAULT '',
`pass` varchar(64) NOT NULL DEFAULT '',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4
1 row in set (0.00 sec)

把 sql 语句 copy 出来,改一下表名和 atuo_increment,然后在执行一下。

复制表结构以及数据

1
2
3
mysql> create table users_bak as select * from users;
Query OK, 4 rows affected (0.01 sec)
Records: 4 Duplicates: 0 Warnings: 0

参考链接

  • 海底苍鹰博客
1234…11

hyj1412

记录生活,书写心得,分享成果
51 posts
26 categories
48 tags
Creative Commons
© 2022 hyj1412 |
Creative Commons
Powered by Hexo v3.9.0
|
Theme – NexT.Muse v7.1.0