docker search mariadb
docker pull mariadb
cd ~
mkdir -p mariadb/data mariadb/logs mariadb/data
cd mariadb
安装
docker run --name mariadb -d -i \
-v ~/mariadb/conf:/etc/mysql/conf.d \
-v ~/mariadb/logs:/logs \
-v ~/mariadb/data:/var/lib/mysql \
-e MYSQL_ROOT_PASSWORD=root \
-p 3306:3306 mariadb
通过Docker安装的一般已经开启远程权限,如果没有,可以这样开启。
docker container ls -la
docker exec -it mariadb /bin/bash
mysql -u root -p
use mysql
show tables;
select host ,user ,password from user;
update user set host="%" where host='localhost';
flush privileges;
exit
$ tree
.
├── conf
├── data
│ ├── aria_log.00000001
│ ├── aria_log_control
│ ├── ddl_recovery.log
│ ├── ib_buffer_pool
│ ├── ibdata1
│ ├── ib_logfile0
│ ├── ibtmp1
│ ├── multi-master.info
│ ├── mysql [error opening dir]
│ ├── performance_schema [error opening dir]
│ └── sys [error opening dir]
└── logs
// 启动
docker start mariadb
// 停止
docker stop mariadb
// 重启
docker restart mariadb
也可以用连接符,实现停止,删除容器,查看
docker container stop mariadb && docker container rm mariadb && docker container ls -la
只要不删除~/mariadb文件夹,数据库资料一直都在。下次使用时粘贴一下命令就行。