https://www.cnblogs.com/notejava/p/7124189.html (使用docker安装mysql服务)
http://blog.csdn.net/smartdt/article/details/78126324 (Docker安装mysql 配置远程登录)
https://blog.csdn.net/yjph83/article/details/95180425 (docker安装mysql 5.7)
1、将2进制版本下载到/home目录下:
[root@localhost home]# wget http://120.52.72.20/cdn.mysql.com/c3pr90ntc0td//Downloads/MySQL-5.7/mysql-5.7.13-linux-glibc2.5-x86_64.tar.gz
将这个包拷贝到 /usr/local/ 目录下,并创建mysql目录;
[root@localhost local]# mkdir mysql #创建mysql安装目录
[root@localhost mysql]# mkdir /data/ #创建数据存放目录
[root@localhost mysql]# mkdir /data/mysql/
2、执行命令创建用户组及用户,更改目录所属
[root@localhost local]# groupadd mysql #创建mysql用户组
[root@localhost local]# useradd -r -g mysql mysql #创建mysql用户
解压
[root@localhost local]# tar -zxvf mysql-5.7.13-linux-glibc2.5-x86_64.tar.gz
进入mysql目录,并将解压后的mysql包中的所有内容拷贝到mysql目录中
[root@localhost mysql]# cp ../mysql-5.7.13-linux-glibc2.5-x86_64/* -r ./
#改变当前目录权限
[root@localhost mysql]# chown -R mysql .
[root@localhost mysql]# chgrp -R mysql .
或者用以下命令形式直接指定路径的目录权限,修改存放数据的目录权限
[root@localhost mysql]# chown -R mysql /data/mysql
[root@localhost mysql]# chgrp -R mysql /data/mysql
3、初始化数据库
5.6.x版本和5.7.6以前版本的初始化方法如下:
[root@localhost mysql]# scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql/ --ldata=/data/mysql
5.7.7开始的初始化方法是:
[root@localhost mysql]# ./bin/mysqld --initialize --user=mysql --datadir=/data/mysql --basedir=/usr/local/mysql --socket=/var/lib/mysql/mysql.sock
本以为很快OK,结果报错!
./bin/mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory
官方文档提示需要安装 libaio包
[root@localhost mysql]# yum install libaio
安装成功后,再次执行初始化
[root@localhost mysql]# ./bin/mysqld --initialize --user=mysql --datadir=/data/mysql --basedir=/usr/local/mysql --socket=/var/lib/mysql/mysql.sock
2016-06-06T06:40:27.968348Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).
2016-06-06T06:40:28.251015Z 0 [Warning] InnoDB: New log files created, LSN=45790
2016-06-06T06:40:28.300985Z 0 [Warning] InnoDB: Creating foreign key constraint system tables.
2016-06-06T06:40:28.369889Z 0 [Warning] No existing UUID has been found, so we assume that this is the first time that this server has been started. Generating a new UUID: 8ea40607-2bb1-11e6-8de2-549f3511065c.
2016-06-06T06:40:28.370826Z 0 [Warning] Gtid table is not ready to be used. Table 'mysql.gtid_executed' cannot be opened.
2016-06-06T06:40:28.371992Z 1 [Note] A temporary password is generated for root@localhost: SglW/w;gg3ti
[root@localhost mysql]#
上边初始化的时候,生成了一个临时的密码文件,所以这个记住,是首次登陆的临时密码,否则你会登陆不上mysql;
以下命令修改本目录所属,防止普通用户误删除目录
[root@localhost mysql]# chown -R root .
4、添加服务
[root@localhost mysql]# cp support-files/mysql.server /etc/init.d/mysql
5、修改my.cnf配置文件如下:
[root@localhost mysql]# vim /etc/my.cnf
[client]
port=3306
default-character-set=utf8
socket=/var/lib/mysql/mysql.sock
[mysqld]
basedir=/usr/local/mysql
datadir=/data/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
#### memory configure
innodb_buffer_pool_size=2G
sort_buffer_size=4M
innodb_file_per_table=1
innodb_open_files=4000
table_open_cache=4000
max_connections=1000
#### character set
character-set-server=utf8
collation-server=utf8_general_ci
lower-case-table-names=1
#### log configure
slow-query-log=1
long-query-time=2
log_queries_not_using_indexes=1
slow-query-log-file=/data/mysql/mysql01-slow.log
#### replication configure
server-id = 1
replicate-ignore-db = mysql
replicate-ignore-db = information_schema
replicate-ignore-db = performance_schema
replicate-ignore-db = sys
binlog-ignore-db = mysql
binlog-ignore-db = information_schema
binlog-ignore-db = performance_schema
binlog-ignore-db = sys
binlog-format=ROW
binlog-row-image=full
binlog-rows-query-log-events=1
sync_binlog=1
log-slave-updates=true
auto-increment-increment = 2
auto-increment-offset = 1
gtid-mode=on
enforce-gtid-consistency=true
# slave-skip-errors=all
# expire-logs-days = 100
slave-skip-errors=1396
#### time configure
explicit_defaults_for_timestamp=true
[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
其余配置再自己去查询相关资料;
6、启动mysql
[root@localhost mysql]# service mysql start
Starting MySQL.. SUCCESS!
7、设置开机启动
[root@localhost mysql]# chkconfig --add mysql
有的系统是如下命令才行
[root@localhost mysql]# chkconfig mysql on
或者
[root@localhost mysql]# chkconfig --level 345 mysql on
查看是否设置成功!
[root@localhost mysql]# chkconfig --list | grep mysql
mysql 0:off1:off2:on3:on4:on5:on6:off
8、修改用户名、密码及访问权限设置,与5.6.X的版本也不相同了
首次登陆
[root@localhost mysql]# ./bin/mysql -uroot -p
Enter password:
输入,初始化生成的 临时密码
mysql> use mysql;
ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.
要求先修改密码
mysql> set PASSWORD='chbigdata'; # 5.7.X 也推荐这种方式来修改密码了,因为,user表属性都变了
mysql> use mysql;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Database changed
mysql> select * from user\G;
*************************** 1. row ***************************
Host: localhost
User: root
Select_priv: Y
Insert_priv: Y
Update_priv: Y
Delete_priv: Y
Create_priv: Y
Drop_priv: Y
Reload_priv: Y
Shutdown_priv: Y
Process_priv: Y
File_priv: Y
Grant_priv: Y
References_priv: Y
Index_priv: Y
Alter_priv: Y
Show_db_priv: Y
Super_priv: Y
Create_tmp_table_priv: Y
Lock_tables_priv: Y
Execute_priv: Y
Repl_slave_priv: Y
Repl_client_priv: Y
Create_view_priv: Y
Show_view_priv: Y
Create_routine_priv: Y
Alter_routine_priv: Y
Create_user_priv: Y
Event_priv: Y
Trigger_priv: Y
Create_tablespace_priv: Y
ssl_type:
ssl_cipher:
x509_issuer:
x509_subject:
max_questions: 0
max_updates: 0
max_connections: 0
max_user_connections: 0
plugin: mysql_native_password
authentication_string: *EAA725493C459C34C1EB241F01C28CC7B1A5A003
password_expired: N
password_last_changed: 2016-06-06 16:04:21
password_lifetime: NULL
account_locked: N
*************************** 2. row ***************************
Host: localhost
User: mysql.sys
Select_priv: N
Insert_priv: N
Update_priv: N
Delete_priv: N
Create_priv: N
Drop_priv: N
Reload_priv: N
Shutdown_priv: N
Process_priv: N
File_priv: N
Grant_priv: N
References_priv: N
Index_priv: N
Alter_priv: N
Show_db_priv: N
Super_priv: N
Create_tmp_table_priv: N
Lock_tables_priv: N
Execute_priv: N
Repl_slave_priv: N
Repl_client_priv: N
Create_view_priv: N
Show_view_priv: N
Create_routine_priv: N
Alter_routine_priv: N
Create_user_priv: N
Event_priv: N
Trigger_priv: N
Create_tablespace_priv: N
ssl_type:
ssl_cipher:
x509_issuer:
x509_subject:
max_questions: 0
max_updates: 0
max_connections: 0
max_user_connections: 0
plugin: mysql_native_password
authentication_string: *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE
password_expired: N
password_last_changed: 2016-06-06 14:40:29
password_lifetime: NULL
account_locked: Y
2 rows in set (0.00 sec)
以上修改的密码是只限定本机登陆的,要想远程登录则还需要
mysql> GRANT ALL PRIVILEGES ON *.* TO root@"%" IDENTIFIED BY "chbigdata";
Query OK, 0 rows affected, 1 warning (0.00 sec)
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
现在就可以用客户端工具登录了。
另:
docker方式安装mysql 5.7
[root@chtest ~]# docker run --name mysql -p 3306:3306 --restart=always \
-v /home/data/mysql/conf/my.cnf:/etc/mysql/my.cnf \
-v /home/data/mysql/logs:/var/log/mysql \
-v /home/data/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=password \
-e TZ='Asia/Shanghai' \
-d mysql:5.7
# password 自己修改成自己的名字,/home/data/mysql/conf/my.cnf 宿主机目录;/etc/mysql/my.cnf docker容器内的目录
docker安装启动成功后,可以用命令:
[root@chtest ~]# docker exec -it mysql bash
进入docker容器,修改mysql 访问授权
root@da55138960a4:/# mysql -h localhost -uroot
mysql> grant all privileges on *.* to root@"%" identified by "chbigdata" with grant option;
Query OK, 0 rows affected, 1 warning (0.00 sec)
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
相关推荐
参考网络上的资源,进行安装并找资料解决了自己安装过程中的问题,希望能帮助大家
MySQL 5.7.13 是一个非常重要的版本,它在 MySQL 数据库管理系统的历史中扮演了关键角色。这个版本带来了许多性能改进、新特性和安全增强,使得它成为企业级应用的理想选择。以下是对这些文件内容的详细解读: 1. *...
### Linux环境下MySQL 5.7.13安装详解 #### 一、系统约定与环境准备 在进行MySQL 5.7.13的安装之前,首先需要明确几个关键的目录和约定,以便后续操作顺利进行。 - **安装文件下载目录**:`/data/software` - **...
MySQL 5.7.13 是 MySQL 数据库管理系统的一个重要版本,它在 Linux 环境下运行。这个版本引入了多项性能优化、安全性增强和功能改进,使其成为许多企业和开发者的首选。以下是对 MySQL 5.7.13 在 Linux 上配置及配置...
### Linux 下 MySQL 5.7.13 的安装与配置详解 #### 一、服务器信息检查 在安装 MySQL 之前,首先要确保服务器满足相应的硬件和软件需求。这一步骤可以通过以下命令来完成: 1. **确认 Linux 发行版**: - `cat /...
版本5.7.13是MySQL的一个稳定版本,其winx64(Windows 64位)版本适合安装在64位Windows操作系统上。本文档将详细阐述如何在Windows环境下安装配置MySQL 5.7.13 winx64版本,包含从下载MySQL安装包到配置数据库服务...
9. 安装与配置:在Windows x64平台上,`.msi`安装文件提供了一种简单的方式来安装和配置MySQL 5.7.13,包括自动创建服务、设置默认端口和初始化数据库等步骤。 总结,MySQL 5.7.13是针对Windows x64环境优化的一个...
本文将深入探讨MySQL 5.7.13版本在Windows x64平台上的安装、配置和使用,以及该压缩包“mysql-5.7.13-winx64.zip”的相关知识。 首先,标题中的“mysql-5.7.13-winx64.zip”表明这是一个专为64位Windows操作系统...
2. 运行`setup.exe`启动安装向导,选择安装类型,通常推荐选择“Custom”以便自定义安装组件。 3. 配置服务器类型,根据你的需求选择开发机器、服务器、工作站等。 4. 设置数据存储位置,可以选择默认位置或自定义...
MySQL 5.7.13是这个数据库管理系统的一个较新版本,具有许多改进和新特性。在Windows 10 64位操作系统上安装MySQL 5.7.13并进行配置,是数据库管理员和开发人员常做的工作之一。本篇文章将详细介绍在Windows 10 64位...
从oracle官网下载的mysql-installer-community-5.7.13.0.msi里面其实并没有Mysql的安装包,只是在安装的时候在线下载然后再安装罢了,于是乎直接下载了mysql-5.7.13-winx64.msi跟mysql5.5安装方式基本一样,不用安装...
2. 安装MySQL 5.7.13: - 从MySQL官方网站下载MySQL 5.7.13的rpm包。 - 使用yum命令安装MySQL的社区版软件包,包括mysql-community-common、mysql-community-libs、mysql-community-client和mysql-community-...
在CentOS7系统上编译安装MySQL 5.7.13是一项技术性较强的任务,本文将详细解析这一过程,帮助读者理解并掌握如何在Linux环境中手动编译和安装MySQL数据库服务器。MySQL 5.7.13是一个重要的版本,它引入了许多增强...
Linux 部署Mysql 5.7.13 数据库详细讲解