老男孩MySQLDBA6期-2019年01月12日-第1天-03MySQL8常规安装

03MySQL8常规安装

1.MySQL数据库介绍

MySQL是一种开放源代码的关系型数据库管理系统(RDBMS),MySQL数据库系统使用最常用的数据库管理语言--结构化查询语言(SQL)进行数据库管理。

MySQL的历史最早可以追溯到1979年,那时Oracle也才刚刚开始,微软的SQL Server影子都没有。

在2008年1月16号 MySQL被Sun公司收购。

2009年,SUN又被Oracle收购

体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,使得许多企业选择了MySQL作为数据库

2.MySQL官网介绍

主页https://www.oracle.com/mysql/index.html

下载主页面https://www.mysql.com/downloads/

社区资源下载页面https://dev.mysql.com/downloads/

MySQL社区版下载页面https://dev.mysql.com/downloads/mysql/

3.MySQL相关产品介绍

Oracle MySQL Cloud Service (commercial)

  商业付费软件,基于MySQL企业版和Oracle云服务提供企业级的MySQL数据库服务

MySQL Enterprise Edition(commercial)

  商业付费软件,除了提供MySQL数据库服务之外,又包含了connector(程序连接接口),partition(表分区),企业级的monitor(监控),HA(高可用),backup(备份),Scalability(扩展)等服务

MySQL Cluster CGE(commercial)

  商业付费软件,基于MySQL Cluster和企业版拥有的各项功能提供企业级的高并发 、高吞吐的数据库服务

MySQL Community Edition

  免费社区软件,提供基础的数据库服务和其他衍生服务

4.MySQL 社区软件相关产品介绍

MySQL Community Server

  最流行的开源数据库管理软件,当前最新版本是5.7

MySQL Cluster

  基于MySQL数据库而实现的集群服务,自身能提供高并发高负载等特性

MySQL Fabric

  MySQL官方提供的关于MySQL数据库高可用和数据分片的解决方案

MySQL Connectors

  为应用程序提供JDBC/ODBC等访问MySQL数据库的接口服务

5.MySQL Community Server 各版本主要区别

MySQL4.0版本:增加了子查询的支持,字符集增加UTF-8,GROUP BY语句增加了ROLLUP,mysql.user表采用了更好的加密算法,InnoDB开始支持单独的表空间

MySQL5.0版本:增加了Stored procedures、Views、Cursors、Triggers、XA transactions的支持,增加了INFORATION_SCHEMA系统数据库

MySQL5.5版本:默认存储引擎更改为InnoDB,提高性能和可扩展性,增加半同步复制

MySQL5.6版本:提高InnoDB性能,支持延迟复制

MySQL5.7版本:提升数据库性能和存储引擎,更健壮的复制功能,增加sys系统库存放数据库管理信息

6.MySQL安装——准备(1)

检查操作系统和MySQL版本的适配度

7.MySQL安装——准备(2)

1)选择安装的MySQL版本

  a)首先判断是否要和公司其他已经安装好的MySQL保持版本一致

  b)如果没有上述要求,则一般会安装最新版本(目前是5.7)

  c)如果不是实验新功能性质,则不要选择development release,而要安装General Availability (GA) release(代表稳定版本,可在生产系统使用)

2)选择安装MySQL的方式

  a)二进制安装包的方式(RPM,ZIP,Tar等)

  b)源码方式(source code)

    aa)一般会选择二进制安装方式

    bb)如果有特殊需求,比如修改一部分源码或修改MySQL深层次的配置,则会选择源码方式

我们以二进制Tar包安装方式为例

8.MySQL Linux 安装

1)下载正确的tar包

2)上传tar包到服务器并解压tar包到/usr/local/目录

cd /usr/local/
tar -xvf mysql-5.7.17-linux-glibc2.5-x86_64.tar
tar -zxvf mysql-5.7.17-linux-glibc2.5-x86_64.tar.gz
mv mysql-5.7.17-linux-glibc2.5-x86_64 mysql

3)创建运行MySQL的用户和组(名字可以任意)

groupadd mysql
useradd mysql -g mysql

4)切换到mysql目录

mkdir data

5)修改解压包的权限

chown –R mysql .
chgrp –R mysql .

6)安装MySQL

##初始化数据目录
bin/mysqld --initialize --user=mysql --datadir /usr/local/mysql/data 

##将默认配置文件复制到指定目录
cp -f support-files/my-default.cnf /etc/my.cnf 

##启动MySQL服务
bin/mysqld_safe --datadir=/usr/local/mysql/data --user=mysql & 

##将MySQL加入到服务自启动
cp support-files/mysql.server /etc/init.d/mysql.server 

##通过服务启动MySQL
/etc/init.d/mysql.server start 

启动过程中如果碰到如下错误

bin/mysqld --initialize --user=mysql --datadir /usr/local/mysql/data

bin/mysqld: error while loading shared libraries: libaio.so.1: cannot openshared object file: No such file or directory

则需要安装包yum install -y libaio

不使用推荐安装路径的方法

bin/mysqld --initialize --user=mysql --basedir=/data/mysql --datadir=/data/mysql/data &
bin/mysqld_safe --basedir=/data/mysql --datadir=/data/mysql/data --user=mysql &

初始化过程中获得root的初始密码

启动完成后通过ps –ef查看MySQL进程 

本机登录MySQL数据库 

修改root的初始密码 

#5.7以下
set password=password('mysql');
flush privileges;

#8.0
alter user user() identified by 'mysql';

9.MySQL Windows安装

官方推荐直接使用MySQL Installer安装

https://dev.mysql.com/downloads/installer/

查看windows的侦听端口,3306端口已经开启 

查看windows service,MySQL57服务已经启动,“自动”表示本机重启后该服务也自动启动

MySQL数据文件目录 

通过mysql专有的客户端连接创建连接 

MySQL数据库退出连接

通过windows command line客户端连接创建MySQL连接 

通过windows command line客户端连接创建MySQL连接

  先设置系统环境变量,将MySQL的bin目录加入到Path环境中

通过windows command line客户端连接创建MySQL连接 

数据库之间切换的命令是use database_name; 

10.MySQL Windows服务关闭

"C:\Program Files\MySQL\MySQL Server 5.7\bin\mysqld.exe" --defaults-file="C:\ProgramData\MySQL\MySQL Server 5.7\my.ini"

MySQL57

11.MySQL常用客户端工具--Aqua

Aqua data studio是一款支持连接多种数据库类型的客户端工具

 

 

12)MySQL常用客户端工具--Navicat

Navicat for MySQL是一款专门针对MySQL的客户端工具

下载地址 http://www.cr173.com/soft/38153.html

13)MySQL常用客户端工具--SQLyog

SQLyog是一款简洁高效、功能强大的图形化MySQL数据库管理工具

下载地址 http://www.cr173.com/soft/126913.html

14)MySQL基本文件结构

Data目录为初始化的数据文件存放路径

Data目录里为每一个数据库创建了一个文件夹

Ibdata1和ib_logfile0/1为三个专为innodb存放数据和日志的共享文件

15)MySQL启动相关参数 

basedir = /usr/local/mysql

  代表MySQL安装路径

datadir = /usr/local/mysql/data

  代表MySQL的数据文件路径

port = 3306

  指定MySQL的侦听端口

log-error=/usr/local/mysql/data/M00006.err
  记录MySQL启动日志和运行错误日志

bind-address(默认是*)

  *代表接受所有来自IPV4、IPV6主机网卡的TCP/IP连接

  0.0.0.0代表接受所有来自IPV4主机网卡的TCP/IP的连接

  指定的IP如127.0.0.1,代表只接受此地址请求的TCP/IP连接

character-set-server(默认是latin1)

  指定MySQL的字符集

collation-server(默认是latin1_swedish_ci)

  指定MySQL的排序规则

default-storage-engine(默认是InnoDB)

  指定MySQL的默认存储引擎

default-time-zone

  指定默认时区,如果没有指定则和系统默认时区一致

open-files-limit(默认5000)

  指定Mysqld运行过程中可以打开的文件数,避免出现” Too many open files”报错

pid-file=/usr/local/mysql/data/M00006.pid

  指定Mysqld进程对应的程序ID文件,默认是在数据文件目录里

Skip-grant-tables

  指定避开MySQL内部的权限表启动服务

Tmpdir

  指定临时表文件的存放路径

修改MySQL默认端口后重启

  修改/etc/my.cnf中的port参数为3307

  /etc/init.d/mysql.server restart重启服务

修改MySQL默认字符集后重启

  修改/etc/my.cnf文件

    character-set-server = utf8

    collation-server = utf8_unicode_ci

  /etc/init.d/mysql.server restart重启服务

  查看重启后的MySQL字符集

show variables like 'character_set_server%';
show variables like 'collation_server%';

修改MySQL数据文件目录后重启

  关闭数据库

    /etc/init.d/mysql.server stop

  数据目录data转移到/data/目录下

    mv data /data/

  修改my.cnf中的datadir参数

    [mysqld]

    datadir = /data/data

  /etc/init.d/mysql.server start服务

 

posted on 2019-11-20 19:50  herisson_pan  阅读(21)  评论(0)    收藏  举报

导航