mysql安装如何指定安装路径(mysql自定义安装目录安装教程),本文通过数据整理汇集了mysql安装如何指定安装路径(mysql自定义安装目录安装教程)相关信息,下面一起看看。

1.安装MySQL

1.1.拉mysql

docker pull mysql:5.7

1.2、启动mysql

docker run-p 3306:3306命名mysql

-v/my data/MySQL/log:/var/log/MySQL

-v/my data/MySQL/data:/var/lib/MySQL

-v/my data/MySQL/conf:/etc/MySQL

-e MYSQL _ ROOT _密码=root

-d mysql:5.7

参数描述

-p 3306:3306将容器的3306端口映射到主机的3306端口,3306是与主机的通信接口。docker内部容器都使用3306接口,集群配置需要连接容器的3306端口,所以最好保持前后端口一致。

name MySQL容器名称

-v/my data/MySQL/log:/var/log/MySQL将配置文件夹挂载到主机。

-v/my data/MySQL/data:/var/lib/MySQL将日志文件夹挂载到主机。

-v/my data/MySQL/conf:/etc/MySQL将配置文件夹挂载到主机。

-e MYSQL_ROOT_PASSWORD=root初始化ROOT用户的密码。

-d mysql:5.7启动mysql:5.7镜像作为守护进程

1.3.检查启动是否成功。

docker ps

注意:如果启动失败,可以通过docker logs mysql查看日志故障排除。

1.4、mysql配置

vi /mydata/mysql/conf/my.cnf

该文件的内容如下:

[客户]

default-character-set=utf8

[mysql]

default-character-set=utf8

[mysqld]

init _ connect=' SET collation _ connection=utf8 _ unicode _ ci '

init_connect='设置名称utf8 '

character-set-server=utf8

collation-server=utf8 _ unicode _ ci

跳过字符集客户端握手

#允许的最大连接数;MySQL的max_connections参数用于设置最大连接数(用户)。每个连接MySQL的用户都算作一个连接,max_connections的默认值是100。

#MySQL无论如何都会为管理员(超级)登录保留一个连接,用于管理员连接数据库进行维护操作,即使当前连接数已经达到max_connections。所以MySQL中的实际最大连接数是max _ connections 1;

该参数的实际最大值(实际最大连接数)为16384,即该参数的最大值不能超过16384,即使超过也以16384为准;

增加max_connections参数的值不会占用太多系统资源。系统资源(CPU、内存)的占用主要取决于查询的密度和效率;

max_connections=1000

=========2020年5月20日补充============

bug:

导入SQL时出现错误#1055。

原因:

MySQL5.7以后,sql_mode中默认存在ONLY_FULL_GROUP_BY,SQL语句没有通过ONLY_FULL_GROUP_BY的语义检查,因此报错。

only _ full _ group _ by:only _ full _ group _ by要求select语句中查询的列必须是显式的(其他语句也是如此)。

修复:

1.在配置文件[mysqld]下添加

sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION '

2.重启mysql容器。

注意:mysql是容器的名称,如果不同请替换。或者使用容器ID。

docker重启mysql

=======================================

1.5.mysql从docker开始。

docker更新MySQL重启=始终

注意:这里的mysql是容器的名称,不是图片。

1.6、输入mysql(可选)

docker exec -it mysql /bin/bash

按Ctrl D或enter exit退出。

1.7.登录mysql(可选)

mysql -u root -p

注意:密码root密码是上面设置的root。

1.8.修改mysql以打开远程访问

1.8.1、查看用户信息

mysql select host,user,plugin,authentic ation _ string from MySQL . user;

注意:%的host表示ip localhost不受限制,也就是说这台机器用的是plugin而不是mysql_native_password,密码需要更改。

Navicat链接错误;我们继续往下看;

1.8.2、打开远程访问:

mysql ALTER用户“root”@“%”由“root”标识为mysql _ native _ password

查询正常,0行受影响(0.01秒)

mysql FLUSH特权;

查询正常,0行受影响(0.01秒)

注意:如果这台机器上安装了mysql,并且端口3306被占用,则外部端口可以映射到其他端口,如下所示:

docker run-p 13306:3306命名mysql …

1.9、检查日志。

docker日志mysql

1.10,打开binlog日志

检查是否打开binlog日志:

显示变量,如“%log_bin%”

找到刚刚本地挂载的mysql设置目录/mydata/mysql/conf。

[root @ slave 132 conf]# CD/my data/MySQL/conf

[root@slave132 conf]# ll

总剂量4

-rw-rr . 1 root root 481 9月22日10:12 my.cnf

[root@slave132 conf]# vi my.conf

新增内容如下:

#binlog设置

log-bin=/var/lib/MySQL/MySQL-bin server-id=12345

第一个参数:mysql会根据这个配置自动将log_bin设置为on状态,并自动设置log_bin_index文件指定的文件名后跟。索引。

第二个参数:如果使用5.7以上版本,重启mysql服务会出错。此时,我们还必须指定这样一个参数,随机指定一个不能与集群中其他机器同名的字符串。如果只有一台机器,可以随便指定。

设置后重启mysql容器。

docker重启mysql

显示变量,如“%log_bin%”

此时,在数据库中创建一个数据库和表,插入一些数据,在/var/lib/mysql容器中会看到以下内容,或者在挂载时查看对应的目录(/mydata/mysql/data)。

更多mysql安装如何指定安装路径(mysql自定义安装目录安装教程)相关信息请关注本站。