docker centos 下安装mariadb

docker centos安装

安装的是centos 7

docker pull centos:7
#启动docker 容器的参数
docker run -p 3306:3306 -v /Users/xxx/code_work/shipook/docker:/opt/data --name="shipook" --privileged -it -d centos:7 /usr/sbin/init
# -p 3306:3306  将端口3306暴露出来,映射到3306
# -v /Users/xxx/code_work/shipook/docker:/opt/data 映射一个数据路径
# --privileged 让root用户有真正的root权限,不然在centos 7 中会出现systemctl 无法运行的bug,
#bug日志如:Failed to get D-Bus connection
# /usr/sbin/init 启动入口设为init,否则systemctl无法使用

mariadb 安装

yum install mariadb-server
#启动
systemctl start mariadb
#开机启动
systemctl enable mariadb

#初始化设置向导
mysql_secure_installation

mariadb 创建用户、删除用户

# 创建用户和用户密码,%表示通配,在所有host上都可以登录
 create user 'hanMM'@'%'  IDENTIFIED BY '123456';
#删除用户
drop user hanMM
#授权用户所有权限
GRANT ALL ON *.* TO 'hanMM'@'%';

授权:
命令:**GRANT privileges ON databasename.tablename TO 'username'@'host' **
说明: privileges - 用户的操作权限,如SELECT , INSERT , UPDATE 等.如果要授予所的权限则使用ALL.;
databasename - 数据库名,
tablename-表名,

字符编码设置

默认情况下的编码如下

SHOW VARIABLES LIKE 'character%';
+--------------------------+----------------------------+
| Variable_name            | Value                      |
+--------------------------+----------------------------+
| character_set_client     | latin1                     |
| character_set_connection | latin1                     |
| character_set_database   | latin1                     |
| character_set_filesystem | binary                     |
| character_set_results    | latin1                     |
| character_set_server     | latin1                     |
| character_set_system     | utf8                       |
| character_sets_dir       | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+

修改

  1. 配置文件/etc/my.cnf.d/client.cnf,在[client]字段里加入 default-character-set=utf8
  2. 配置文件/etc/my.cnf.d/server.cnf,在[mysqld]字段里加入 character-set-server=utf8
  3. 重启 MariaDB 配置生效:systemctl restart mariadb。

修改后:

+--------------------------+----------------------------+
| Variable_name            | Value                      |
+--------------------------+----------------------------+
| character_set_client     | utf8                       |
| character_set_connection | utf8                       |
| character_set_database   | utf8                       |
| character_set_filesystem | binary                     |
| character_set_results    | utf8                       |
| character_set_server     | utf8                       |
| character_set_system     | utf8                       |
| character_sets_dir       | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+

你可能感兴趣的:(docker centos 下安装mariadb)