docker下载并使用mysql

指定镜像创建容器(如果镜像不存在,会自动去拉取)
docker run —name some-mysql -e MYSQL_ROOT_PASSWORD=my-secret-pw -p port:port -d mysql:tag

some-mysql:替换为自己的容器名
my-secret-pw:替换为进入容器的密码
port:port:替换为端口号
tag:替换为想要使用的镜像版本号

  1. docker run --name mysql-1 -e MYSQL_ROOT_PASSWORD=123456 -p 3306:3306 -d mysql:5.7.27

docker 命令

docker ps: 查看已有容器
docker kill mysqlName/mysqlId : 关闭指定容器
docker container start mysqlName/mysqlId : 打开指定容器
docker rm -f ``mysqlName/mysqlId : 删除指定容器(-f 表示强制,可选项)
docker exec -it ``mysqlName/mysqlId bash : bash命令连接进Linux
docker images : 查询已有镜像
docker rmi -f imageId : 删除指定镜像(-f表示强制,可选项)

docker批量操作:

docker rm -fdocker ps -a -q` : 删除所有容器<br />docker rm -f docker images -q ` : 删除所有镜像

mysql 命令:

mysql -u root -p : 回车后输入密码,进入mysql
show databases; : 查看数据库
create database if not exists hong default charset=utf8mb4 collate=utf8mb4_unicode_520_ci;
创建数据库

  • [if not exists] : 条件判断,如果存在(可选项)
  • default charset = xxx:设置字符编码形式
  • collate=xxx_yyy….:字符校验

drop database 数据库名字 : 删除数据库
use 数据库名字; : 使用该数据库
show tables; : 展示数该据库的表格
create table if not exists userTable(字段一:类型,字段二:类型) :创建表格(创建数据库时设置了编码,这边就不需要了)
drop table 表格名 : 删除表格
describe 表格名 :描述表格
select */fieldsName from 表格名字; :查看指定表格内容
insert into userTable values("jimmy",18);:将jimmy放入字段一,将18放入字段二
insert into userTable (字段一) values("jack");: 在指定字段处放入数据
delete from <表名> [where] [order by] [limit] :如不指定where则删除整张表格数据

  • where : 限定删除条件
  • order by :指定删除顺序
  • limit :指定删除数量

nodejs使用mysql

  1. var mysql = require("mysql");
  2. var connection = mysql.createConnection({
  3. host: "localhost",
  4. user: "root",
  5. password: "123456",
  6. });
  7. connection.connect();
  8. connection.query(
  9. "CREATE DATABASE IF NOT EXISTS hong DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_520_ci;",
  10. function (error, results, fields) {
  11. if (error) throw error;
  12. console.log("创建数据库");
  13. console.log("The results is: ", results);
  14. }
  15. );
  16. connection.query("use hong");
  17. connection.query(
  18. `CREATE TABLE IF NOT EXISTS userTable(
  19. name text,
  20. age int
  21. )`,
  22. function (error, results, fields) {
  23. if (error) throw error;
  24. console.log("创建表格");
  25. console.log(results);
  26. }
  27. );
  28. connection.end();
  1. mysql> show databases;
  2. +--------------------+
  3. | Database |
  4. +--------------------+
  5. | information_schema |
  6. | hong |
  7. | mysql |
  8. | performance_schema |
  9. | sys |
  10. +--------------------+
  11. 5 rows in set (0.00 sec)
  12. mysql> use hong;
  13. Database changed
  14. mysql> show tables;
  15. +----------------+
  16. | Tables_in_hong |
  17. +----------------+
  18. | userTable |
  19. +----------------+
  20. 1 row in set (0.00 sec)
  21. mysql> describe userTable;
  22. +-------+---------+------+-----+---------+-------+
  23. | Field | Type | Null | Key | Default | Extra |
  24. +-------+---------+------+-----+---------+-------+
  25. | name | text | YES | | NULL | |
  26. | age | int(11) | YES | | NULL | |
  27. +-------+---------+------+-----+---------+-------+
  28. 2 rows in set (0.00 sec)