centos 版本 CentOS Linux release 7.5.1804 (Core)
内核版本: 3.10.0-862.el7.x86_64
下载最新版mysql
docker pull mysql
启动镜像
docker run --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=woshimima -d mysql
进入命令
docker exec -it mysql /bin/bash
连接数据库
mysql -uroot -p woshimima
查看编码格式
show variables like "%char%";
utf8mb4 代表可以添加emoji ,所以要修改格式
set character_set_client =utf8mb4;
set character_set_connection=utf8mb4;
set character_set_database=utf8mb4;
set character_set_filesystem=utf8mb4;
set character_set_results=utf8mb4;
set character_set_server= utf8mb4;
FLUSH PRIVILEGES;
这个只是暂时修改了编码格式,重启了mysql还是变回了原来的样子。气不气?要去文件里修改配置,
#/etc/mysql/conf.d/mysql.cnf 这个就是文件位置,替换一下 docker cp D:\nginx-1.13.12\conf.d\mysql.cnf 193290698eb9:/etc/mysql/conf.d/mysql.cnf
[client]
#设置客户端编码
default-character-set=utf8mb4
这样就修改完成了,重启进入查看一下
完美
退出。重新进入 连接数据库 修改root密码
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'woshimima';
FLUSH PRIVILEGES;
创建表
create database weiqinke;
创建用户
CREATE USER weiqinke IDENTIFIED BY 'woshimima';
给weiqinke 这个表加一个用户并刷新权限
grant all privileges on weiqinke.* to 'weiqinke'@'%' with grant option;
flush privileges;
删除Root的远程权限
delete from user where user='root'and host='%';
此时结束了。
下面是配置,此项配置占用了382M内存,原始配置占用了462M,下降了大约80M内存,本身就是2G,暂时还能用,后期看到好的参数,再进行调优吧
[mysqld]
pid-file = /var/run/mysqld/mysqld.pid
socket= /var/run/mysqld/mysqld.sock
datadir= /var/lib/mysql
secure-file-priv=NULL
innodb_buffer_pool_size=1000000000# 按事物刷盘,刷日志
innodb_flush_log_at_trx_commit=1# 脏页占innodb_buffer_pool_size的比例时,触发刷脏页到磁盘
#25%~50%innodb_max_dirty_pages_pct=30# 后台进程最大IO性能指标
# 默认200,如果SSD,调整为5000~20000innodb_io_capacity=100# 全量日志建议关闭
# 默认关闭
general_log=0table_open_cache=2000tmp_table_size=12M
thread_cache_size=10myisam_max_sort_file_size=1G
myisam_sort_buffer_size=15M
key_buffer_size=8M
read_buffer_size=30K
read_rnd_buffer_size=256K
innodb_flush_log_at_trx_commit=1innodb_log_buffer_size=1M
innodb_buffer_pool_size=32M
innodb_log_file_size=48M
innodb_autoextend_increment=64innodb_buffer_pool_instances=8innodb_concurrency_tickets=5000innodb_old_blocks_time=1000innodb_open_files=300innodb_file_per_table=1innodb_checksum_algorithm=0back_log=80flush_time=0join_buffer_size=256K
max_allowed_packet=4M
max_connect_errors=100open_files_limit=4161sort_buffer_size=256K
table_definition_cache=1400binlog_row_event_max_size=8K
sync_master_info=10000sync_relay_log=10000sync_relay_log_info=10000# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0# Custom config should go here!includedir /etc/mysql/conf.d/
下面这3行,占用只有285M左右,下降了大约177M
performance_schema_max_table_instances=600table_definition_cache=400table_open_cache=256