docker 的安装以及配置mysql
docker安装以及基本配置
[注意!!!安装mysql后,一定要授权并且刷新权限]
docker常用命令
docker ps
查看月运行的容器的运行状态
docker ps -a
查看所有容器的运行状态
docker logs [id]
查看启动日志
docker kill [mysql1/id]
关掉容器
docker container start [mysql1]
开启关掉的容器
docker rm [mysql1]
删除容器
docker run [mysql1]
启动新容器
进入容器的bash
docker exec -it [id] bash
进入mysql
mysql -u root -p
查看所有数据库
show databases;
进入该的数据库
use [database name];
展示当前数据库中所有的表
show tables;
查看当前表内容
select * from [name];
使用PostgreSQL
安装
docker run -v "blog-data":/var/lib/postgresql/data -p 5432:5432 -e POSTGRES_USER=blog -e POSTGRES_HOST_AUTH_METHOD=trust -d postgres:12.2
创建数据库
CREATE DATABASE blog_development ENCODING 'UTF8' LC_COLLATE 'en_US.utf8' LC_CTYPE 'en_US.utf8';
安装成功后进入容器bash
进入容器的bash
```javascript
docker exec -it [id/name] bash
登陆进入pg命令行
psql -U blog -W
pg命令
展示所有数据库
\l
连接数据库
\c [name]
展示连接的数据库的所有的table
\dt
退出pg命令行
\q
安装 typeorm
安装相关依赖
yarn add typeorm@0.2.25 reflect-metadata @types/node pg @babel/cli @babel/plugin-proposal-decorators
修改tsconfig
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
添加.babelrc
{
"presets": ["next/babel"],
"plugins": [["@babel/plugin-proposal-decorators", { "legacy": true }]]
}
初始化项目
npx typeorm init --database postgres
修改ormconfig.json
{
"type": "postgres",
"host": "localhost",
"port": 5432,
"username": "blog",
"password": "",
"database": "blog_development",
"synchronize": false,
"logging": false,
"entities": [
"dist/entity/**/*.js"
],
"migrations": [
"dist/migration/**/*.js"
],
"subscribers": [
"dist/subscriber/**/*.js"
],
"cli": {
"entitiesDir": "src/entity",
"migrationsDir": "src/migration",
"subscribersDir": "src/subscriber"
}
}
添加 migration 和 entity
npx typeorm migration:create -n CreatePosts
npx typeorm entity:create -n Post
执行 与恢复
npx typeorm migration:run
npx typeorm migration:revert