给路由器装mysql以及进入docker内部
起因
想给我的typecho使用mysql数据库,但是因为是路由器,其linux并不完整,容易出现问题。安装失败了两次,故使用docker方案。
但是猜想是网络配置的原因:
- docker的typecho连接不上docker的mysql
- 另一台物理主机能连上docker的mysql
因此这次配置是失败了,但是仍有值得记录的地方:
SSH穿透进入docker的办法:非常有用
在这记录下二者的配置过程,方便以后复现
安装mysql
配置mysql的docker命令
不多,就是两句话:
用ssh连接路由器后,输入 :
docker pull arm64v8/mysql
一会之后 ,输入
docker run -d -e MYSQL_ROOT_PASSWORD=123456 -p 3306:3306 arm64v8/mysql
这样,咱们的管理员密码就是123456了,账号是root
按理说,现在能用了! 不需要额外去配置别的了,如果你想改名,想加内容管理他,咱就下载一个社区版本的免费小海豚就能用了。十分容易而简单。不要用命令行了朋友们,命令行肯定不如gui好用
SQLyog Community - 64 bit

该软件是社区版本的小海豚,名称:sqlyog
安装Typecho
ps:如果你想下载typecho的docker:请使用下面的这个:
就两句话:
docker pull 80x86/typecho
docker run -d \--name=typecho-blog2 \--restart always \--mount type=tmpfs,destination=/tmp \-v /opt/srv/http/typecho:/data \-e PHP_TZ=Asia/Shanghai \-e PHP_MAX_EXECUTION_TIME=600 \-p 91:80 \80x86/typecho:latest
这样,我们就可以在 路由器地址上加上端口号91 ,开始部署typecho了。大家可以参考我的这个文章:
https://www.bilibili.com/read/cv17259057
重点SSH穿透docker
进入docker
用ssh来控制docker内部,我们用的方法是这样的:
等新docker安装好了,我们看看这个docker的id 是啥,找到他!
思路是先查看:docker 的 ID
找到名字就能进他家了
sudo docker ps
我看到了很多的id(第一列),咱记住他的id待会要用:
咱们的id是这个
676b1a7281c3。你刚安装好的docker肯定是启动状态的。先开始你的docker才能找到。
直接输入:
sudo docker exec -it 676b1a7281c3 /bin/bash
等待一段时间,就进来了。非常快乐:
我们现在的ssh操作就相当于大家的mysql直接安装在服务器上一样,非常nice。
给大家几个基础的命令参考:
来自:https://blog.csdn.net/m0_67402970/article/details/123786903
登录数据库,用户是root
mysql -u root -p
根据提示,待会把密码输入进去:
咱密码刚刚设置好了,就是123456
创建新数据库bkk
mysqladmin -u root -p create bkk
按理说,咱们到这里,就是纯纯用命令来操作mysql了,但毕竟用ssh来操作数据库很上头,我没有学习清楚:我把基础命令给大家贴上来:大家参考下吧
https://blog.csdn.net/m0_67402970/article/details/123786903
作者:m0_67402970
### 目录
- [1、mysql服务的启动和停止](#1mysql_4)
- [2、登陆mysql](#2mysql_10)
- [3、增加新用户](#3_16)
- [4、 操作数据库](#4__27)
- - [Ⅰ、 显示数据库列表。](#__39)
- [Ⅱ、 显示库中的数据表:](#__45)
- [Ⅲ、 显示数据表的结构:](#__50)
- [Ⅳ、 建库与删库:](#__54)
- [Ⅴ、 建表与删表:](#__59)
- [Ⅵ、 清空表中记录:](#__65)
- [Ⅶ、 显示表中的记录:](#__69)
- [Ⅷ、 往表中加入记录:](#__73)
- [Ⅹ、更新表中数据](#_79)
- [5、导出和导入数据](#5_87)
- - [Ⅰ. 导出数据:](#__89)
- [Ⅱ. 导入数据:](#__95)
- [Ⅲ. 将文本数据导入数据库:](#__99)
- [6、退出MYSQL命令:](#6MYSQL_105)
## 1、mysql服务的启动和停止
```
net stop mysql
net start mysql
```
## 2、登陆mysql
```
mysql (-h)-u 用户名 -p 用户密码
注意,如果是连接到另外的机器上,则需要加入一个参数-h机器IP
```
键入命令mysql -u root -p, 回车后提示你输入密码,然后回车即可进入到mysql中了
## 3、增加新用户
```
grant 权限 on 数据库.* to 用户名@登录主机 identified by "密码"`
```
例:增加一个用户user密码为password,让其可以在本机上登录, 并对所有数据库有查询、插入、修改、删除的权限。首先用以root用户连入mysql,然后键入以下命令:
```
grant select,insert,update,delete on *.* to user@localhost Identified by “password”;
```
如果希望该用户能够在任何机器上登陆mysql,则将localhost改为"%"。
## 4、 操作数据库
登录到mysql中,然后在mysql的提示符下运行下列命令,每个命令以分号结束。
选择你所创建的数据库
```
use 数据库名
```
导入.sql文件命令(例D:/mysql.sql):
```
mysql>use 数据库名;
mysql>source d:/mysql.sql;
```
## Ⅰ、 显示数据库列表。
```
show databases;
```
缺省有两个数据库:mysql和test。 mysql库存放着mysql的系统和用户权限信息,我们改密码和新增用户,实际上就是对这个库进行操作。
## Ⅱ、 显示库中的数据表:
```
use 库名;
tables;
```
## Ⅲ、 显示数据表的结构:
```
describe 表名;
```
## Ⅳ、 建库与删库:
```
create database 库名(character set utf8);
drop database 库名;
```
## Ⅴ、 建表与删表:
```
use 库名;
create table 表名(字段列表);
drop table 表名;
```
## Ⅵ、 清空表中记录:
```
delete from 表名;
```
## Ⅶ、 显示表中的记录:
```
select * from 表名;
```
## Ⅷ、 往表中加入记录:
```
insert into 表名 values (字段列表);
```
## Ⅹ、更新表中数据
```
mysql>update 表名 set 字段="值" where 子句 order by 子句 limit 子句
WHERE 子句:可选项。用于限定表中要修改的行。若不指定,则修改表中所有的行。
ORDER BY 子句:可选项。用于限定表中的行被修改的次序。
LIMIT 子句:可选项。用于限定被修改的行数。
```
## 5、导出和导入数据
## Ⅰ. 导出数据:
```
mysqldump --opt test > mysql.test
即将数据库test数据库导出到mysql.test文本文件
例:mysqldump -u root -p用户密码 --databases dbname > mysql.dbname
```
## Ⅱ. 导入数据:
```
mysqlimport -u root -p用户密码 < mysql.dbname。
```
## Ⅲ. 将文本数据导入数据库:
```
文本数据的字段数据之间用tab键隔开。
use test;
load data local infile "文件名" into table 表名;
```
## 6、退出MYSQL命令:
```
exit (回车)
```
Comment here is closed