首页 > 代码库 > 第二百七十五节,MySQL数据库安装和介绍

第二百七十五节,MySQL数据库安装和介绍

MySQL数据库安装

 

一、概述

1、什么是数据库 ?
 答:数据的仓库,称其为数据库

 

2、什么是 MySQL、Oracle、SQLite、Access、MS SQL Server等 ?
 答:他们均是一种软件,都有两个主要的功能:
  a. 将数据保存到文件或内存
  b. 接收特定的命令,然后对文件进行相应的操作

MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下公司。MySQL 最流行的关系型数据库管理系统,在 WEB 应用方面MySQL是最好的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件之一。

PS:如果有了以上软件,无须自己再去创建文件和文件夹,而是直接传递 命令 给上述软件,让其来进行文件操作,他们统称为数据库管理系统(DBMS,Database Management System)

 

3、什么是SQL语句 ?
 答:上述提到MySQL等软件可以接受命令,并做出相应的操作,由于命令中可以包含删除文件、获取文件内容等众多操作,对于编写的命令就是是SQL语句。SQL是结构化语言(Structured Query Language)的缩写,SQL是一种专门用来与数据库通信的语言。

 

 

二、下载安装MySQL数据库安

想要使用MySQL来存储并操作数据,则需要做几件事情:


  a. 安装MySQL服务端
  b. 安装MySQL客户端
  b. 【客户端】连接【服务端】
  c. 【客户端】发送命令给【服务端MySQL】服务的接受命令并执行相应操作(增删改查等)

 官方下载网址:http://dev.mysql.com/downloads/mysql/

 

Window版本安装

1、下载 ,MySQL Community Server 5.7.16版本

技术分享

2、解压
如果想要让MySQL安装在指定目录,那么就将解压后的文件夹移动到指定目录,如:E:\ 

技术分享

 

解压后文件夹里的文件

技术分享

 

 

安装和启动MySQL

MySQL解压后的 bin 目录下有一大堆的可执行文件

技术分享

 

1、初始化

cmd以管理员身份运行

技术分享

技术分享

 

 

 

进入初始化目录

//在 cmd终端 输入 cd E:\mysql-5.7.16-winx64\bin

C:\WINDOWS\system32>cd E:\mysql-5.7.16-winx64\bin

技术分享

 

 

进入目录后初始化数据

//在 E:\mysql-5.7.16-winx64\bin> 目录下输入 mysqld --initialize-insecure

E:\mysql-5.7.16-winx64\bin>mysqld --initialize-insecure

技术分享

注意:此时没有什么返回信息,查看E:\mysql-5.7.16-winx64目录下是否自动生成了data文件夹,如果生成了此文件夹并且文件夹里包含了数据,表示初始化成功

技术分享

data文件夹里包含数据

技术分享

 

 

 

启动MySQL服务

//在 E:\mysql-5.7.16-winx64\bin> 目录下输入 mysqld

E:\mysql-5.7.16-winx64\bin>mysqld

技术分享

注意:此时cmd终端无法操作了,直接关闭cmd终端窗口

 

 

 

重新以管理员身份运行cmd终端进入E:\mysql-5.7.16-winx64\bin>目录

技术分享

 

 

 

启动MySQL客户端并连接MySQL服务

由于初始化时使用的【mysqld --initialize-insecure】命令,其默认未给root账户设置密码

//在 E:\mysql-5.7.16-winx64\bin> 目录下输入 mysql -u root -p

E:\mysql-5.7.16-winx64\bin>mysql -u root -p

//Enter password: 提示请输入密码,直接回车

技术分享

到此为止,MySQL服务端已经安装成功并且客户端已经可以连接上,以后再操作MySQL时,只需要重复上述 mysql -u root -步骤即可。但是,重复的进入可执行文件目录比较繁琐,如想日后操作简便,可以做如下操作。

 

 

添加环境变量

将MySQL可执行文件添加到环境变量中,从而执行执行命令即可

【环境变量】--》【在第二个内容框中找到 变量名为Path 的一行,双击】 --> 【将MySQL的bin目录路径追加到变值值中,用 ; 分割】

//如:
C:\Program Files (x86)\Parallels\Parallels Tools\Applications;%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\;C:\Python27;C:\Python35;C:\mysql-5.7.16-winx64\bin

技术分享

 

 

 

如此一来,以后再启动服务并连接时不需要在进入bin目录了,仅需:

// 启动MySQL服务,在终端输入
mysqld
 
// 连接MySQL服务,在终端输入:
mysql -u root -p

 

 

将MySQL服务制作成windows服务

上一步解决了一些问题,但不够彻底,因为在执行【mysqd】启动MySQL服务器时,当前终端会被hang住,那么做一下设置即可解决此问题:

// 制作MySQL的Windows服务,在终端执行此命令:
"E:\mysql-5.7.16-winx64\bin\mysqld" --install
 
// 移除MySQL的Windows服务,在终端执行此命令:
"E:\mysql-5.7.16-winx64\bin\mysqld" --remove

 

 

注册成服务之后,以后再启动和关闭MySQL服务时,仅需执行如下命令:

// 启动MySQL服务
net start mysql
 
// 关闭MySQL服务
net stop mysql

 

卸载mysql是cd到bin目录下执行mysqld --remove

检测安装,输入 mysql --version

输入exit退出

 

 

 

Linux版本安装

在线安装

安装:

yum install mysql-server  

服务端启动

mysql.server start

客户端连接

//连接:
    mysql -h host -u user -p
 
    //常见错误:
        ERROR 2002 (HY000): Can‘t connect to local MySQL server through socket ‘/tmp/mysql.sock‘ (2), it means that the MySQL server daemon (Unix) or service (Windows) is not running.

//退出:
    QUIT 或者 Control+D

 

 

 

离线安装【推荐】

1、解压MySQL-5.7.16-Linux-glibc2.5-x86_64.tar.gz,并拷贝到/usr/local/mysql目录下
解压:

tar -zxvf mysql-5.7.16-linux-glibc2.5-x86_64.tar.gz

技术分享

拷贝:

sudo cp -r mysql-5.7.16-linux-glibc2.5-x86_64 /usr/local/mysql

技术分享

2、添加系统mysql组和mysql用户 
添加系统mysql组

sudo groupadd mysql

添加mysql用户

sudo useradd -r -g mysql mysql

添加完成后可用id mysql查看

技术分享

 

 

3、安装数据库

切换到/usr/local/mysql目录

cd /usr/local/mysql

修改当前目录拥有者为mysql用户

sudo chown -R mysql:mysql ./

安装数据库(5.7版本的安装已经不建议使用mysql_install_db 来安装,而是使用mysqld)

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

技术分享

临时密码:xk?hs6OhU

执行以下命令创建RSA private key

sudo bin/mysql_ssl_rsa_setup  --datadir=/usr/local/mysql/data

技术分享

修改当前目录拥有者为root用户

sudo chown -R root:root ./

修改当前data目录拥有者为mysql用户

sudo chown -R mysql:mysql data

技术分享

 

4、配置my.cnf和开机启动

cd support-files
sudo cp my-default.cnf /etc/my.cnf
sudo cp mysql.server /etc/init.d/mysql
sudo vim /etc/init.d/mysql             ##修改basedir=  自己的路径     修改datadir= 自己的路径

技术分享

技术分享

 

修改完毕后:wq!保存并退出vi 
vi命令:

按ESC键 跳到命令模式,然后: 
:w 保存文件但不退出vi 
:w file 将修改另外保存到file中,不退出vi 
:w! 强制保存,不推出vi 
:wq 保存文件并退出vi 
:wq! 强制保存文件,并退出vi 
q: 不保存文件,退出vi 
:q! 不保存文件,强制退出vi 
:e! 放弃所有修改,从上次保存文件开始再编辑

 

修改my.cnf

sudo vim /etc/my.cnf
[mysqld] 
character-set-server=utf8 
datadir=/home/mysql/mysqldata 
basedir=/usr/local/mysql 
socket=/var/lib/mysql/mysql.sock

技术分享

 

保存并退出

5、启动mysql

service mysql start

登录mysql,并设置远程连接

mysql -u user -p

GRANT ALL PRIVILEGES ON *.* TO ‘user‘@‘%‘ IDENTIFIED BY ‘password‘ WITH GRANT OPTION;
flush privileges;

 

第二百七十五节,MySQL数据库安装和介绍