详解mysql安装与配置,及Mac中常见的安装问题

2024-06-04 2787阅读

目录

1 数据库介绍

什么是数据库

数据库分类

2 MySQL服务器安装

2.1 Windows绿色安装

 2.2 Windows中重装MySQL

3 Mac中常见的安装问题

4 客户端连接MySQL服务器 

5 SQL分类


1 数据库介绍

什么是数据库

存储数据用文件就可以了,为什么还要弄个数据库?

文件保存数据有以下几个缺点:

  • 文件的安全性问题
  • 文件不利于数据查询和管理
  • 文件不利于存储海量数据
  • 文件在程序中控制不方便

    数据库存储介质:

    • 磁盘
    • 内存 

      为了解决上述问题,专家们设计出更加利于管理数据的软件——数据库,它能更有效的管理数据。数据库可以提供远程服务,即通过远程连接来使用数据库,因此也称为数据库服务器。

      数据库分类

      数据库大体可以分为 关系型数据库 和 非关系型数据库

      • 关系型数据库(RDBMS):

        是指采用了关系模型来组织数据的数据库。 简单来说,关系模型指的就是二维表格模型,而一个

        关系型数据库就是由二维表及其之间的联系所组成的一个数据组织。

        基于标准的SQL,只是内部一些实现有区别。常用的关系型数据库如:

        1. Oracle:甲骨文产品,适合大型项目,适用于做复杂的业务逻辑,如ERP、OA等企业信息系统。收费。
        2. MySQL:属于甲骨文,不适合做复杂的业务。开源免费。
        3. SQL Server:微软的产品,安装部署在windows server上,适用于中大型项目。收费。
        • 非关系型数据库:

          不规定基于SQL实现。现在更多是指NoSQL数据库,如:

          1. 基于键值对(Key-Value):如 memcached、redis
          2. 基于文档型:如 mongodb
          3. 基于列族:如 hbase
          4. 基于图型:如 neo4j

          关系型数据库与非关系型数据库的 区别:

          1. 数据模型:关系型数据库使用表格结构以行和列的形式组织数据,通过定义表之间的关系来表示数据之间的联系。而非关系型数据库则不使用表格结构,可以使用不同的数据模型,如键值对、文档、列族等。

          2. 可扩展性:关系型数据库在处理大规模数据时可能面临性能瓶颈,因为它们通常在单个服务器上运行。而非关系型数据库通常具有更好的可扩展性,可以将数据存储在多个节点上,以实现水平扩展。

          3. 数据一致性:关系型数据库通常使用ACID(原子性、一致性、隔离性和持久性)事务来保证数据的一致性。非关系型数据库则通常放宽对数据一致性的要求,以获得更高的性能和可扩展性。

          4. 灵活性:关系型数据库需要在设计之前定义表的结构,一旦定义之后很难修改。非关系型数据库则更加灵活,可以在不影响现有数据的情况下进行动态添加、修改和删除。

          5. 查询语言:关系型数据库使用SQL(结构化查询语言)进行查询和操作数据。非关系型数据库通常使用不同的查询语言,如MongoDB使用的查询语言是基于文档模型。

          6. 数据存储方式:关系型数据库通常将数据存储在硬盘上,而非关系型数据库可以选择将数据存储在内存、硬盘或分布式文件系统中。

          2 MySQL服务器安装

          2.1 Windows绿色安装

          • 解压MySQL:如解压到D:\Tools\mysql-5.7.27-winx64(注意不要放在中文路径、有空格或特殊字符的路径中)
          • 配置环境变量:

            1.右键 此电脑 -> 高级系统设置 -> 环境变量 -> 在下面 系统变量栏 点击 新建 ->

            • 变量名:MYSQL_HOME
            • 变量值:为MySQL解压的根目录,我这里为D:\Tools\mysql-5.7.27-winx64

              2. 在 系统变量栏 找到 Path 变量并双击:

              Win10中点击 新建 以添加新的路径:
              %MYSQL_HOME%\bin

              Win7中直接添加到Path的最前面:
              %MYSQL_HOME%\bin

              说明:

              需要执行某个指令,如D:\Tools\mysql-5.7.27-winx64\bin\mysqld.exe,需要在cmd中输入

              全路径,或切换到D:\Tools\mysql-5.7.27-winx64\bin目录下执行mysqld.exe。为方便操

              作,如在cmd可以直接输入mysqld执行该指令,可以按以上配置:

              1. 以上配置 %MYSQL_HOME% 代表引用的 MYSQL_HOME 环境变量,即D:\Tools\mysql-5.7.27-winx64。
              2. 配置在 Path 中,表示设置 %MYSQL_HOME%\bin 路径为全局路径,全局路径下的指令可以直接执行。
              • 配置MySQL初始化文件:

                1. 在MySQL根目录下创建初始化文件my.ini,即D:\Tools\mysql-5.7.27-winx64\my.ini。内容

                如下:

                [mysql]
                # 设置mysql客户端默认字符集
                default-character-set=utf8
                [mysqld]
                #设置3306端口
                port=3306
                # 设置mysql的安装目录
                basedir=D:/Tools/mysql-5.7.27-winx64
                # 设置mysql数据库的数据的存放目录
                datadir=D:/Tools/mysql-5.7.27-winx64/data
                # 允许最大连接数
                max_connections=200
                # 服务端使用的字符集默认为8比特编码的latin1字符集
                character-set-server=utf8
                # 创建新表时将使用的默认存储引擎
                default-storage-engine=innodb

                2.将以上 basedir 和 datadir 后的内容替换成自己的路径。

                3. 注意:需要保存为ANSI编码。

                方法一:使用记事本打开,保存/另存为,选择ANSI编码。

                方法二:使用Notpad++打开,点击编码->转为ANSI编码->保存。

                • 初始化MySQL

                  右键点击cmd,选择 以管理员身份运行,执行以下命令

                  mysqld --initialize-insecure

                  如果出现找不到mysqld或是mysql命令,这是环境变量没有配置正确。检查环境变量,如果正

                  确,则重新打开cmd,因为cmd会缓存系统变量,没有更新。

                  以上初始化操作完成后,可以看到在MySQL根目录下生成了data目录。

                  初始化的MySQL会生成超级管理员,账户名 root ,密码为空

                  • 安装MySQL服务:

                    如果以前安装过MySQL,会默认安装MySQL的系统服务,点击开始菜单,输入services.msc,进

                    入系统服务界面,搜索是否有mysql服务(可以在英文状态输入mysql快速定位),如果有mysql

                    服务,需要先删除,有以下两种删除方法:

                    1.  cmd管理员权限打开,输入sc delete mysql
                    2.  如果以上命令执行失败,还可以直接使用注册表删除,点击开始菜单,输入regedit,查找HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services中的mysql,将其删除

                    在以上mysql服务删除后,可以安装新解压的mysql服务了,在cmd执行:

                    mysqld install

                    此时执行 win+r 输入 services.msc 打开服务管理器,可以看到MySQL服务

                    • 运行/停止MySQL服务端

                             cmd执行

                      net start mysql

                      net stop mysql

                       2.2 Windows中重装MySQL

                      • 重装相同版本的MySQL很简单,不用真正卸载,只需要删除MySQL根目录下data文件夹,之后按照 2.1 中的内容,从 初始化MySQL 内容开始重新执行即可。
                      • 重装不同版本的MySQL,需要卸载以前安装的MySQL:如果以前通过解压方式安装的MySQL,需要重新安装或卸载时,需要如下操作:右键点击cmd,选择 以管理员身份运行
                        • net stop mysql
                        • mysqld -remove mysql

                          之后重新执行2.1的安装步骤。

                          3 Mac中常见的安装问题

                            1. mac系统安装mysql,只需要安装dmg文件就行,安装完毕,打开系统偏好设置,可以看到mysql服务,点击可以查看服务状态。

                            2. 在mac中安装好mysql后,要在终端使用mysql,需要配置环境变量:

                          • 切换到bash shell:

                            chsh -s /bin/bash 

                            • 查找mysql目录: 

                              find / -name mysql 

                              • 新建用户功能设置文件: 

                                vim ~/.profile 

                                打开的文件中点击i,输入以下内容:

                                export MYSQL_HOME=查找到的mysql目录(一般是/usr/local/mysql)

                                export PATH=$MYSQL_HOME:$PATH

                                再点击":wq"保存退出

                                • 刷新环境变量: 

                                  source ~/.profile 

                                  4 客户端连接MySQL服务器 

                                  MySQL默认只允许在服务器本机 使用 root 用户登录,要开启 root 用户的远程登录,在MySQL服务器本机执行: 

                                  mysql -u root -p 

                                  要求输入密码,没有设置密码则直接回车

                                  进入MySQL命令行以后,可以看到 mysql> 

                                  -- 使用mysql数据库
                                  use mysql;
                                  -- 更新用户表的root账户,设置为任意ip都可以访问,密码修改为123456
                                  update user set host="%",authentication_string=password('root') where
                                  user="root";
                                  -- 刷新权限
                                  flush privileges;

                                   退出

                                  quit;

                                  5 SQL分类

                                  • DDL数据定义语言,用来维护存储数据的结构

                                          代表指令: create, drop, alter

                                    • DML数据操纵语言,用来对数据进行操作

                                            代表指令: insert,delete,update

                                      •   DML中又单独分了一个DQL,数据查询语言,代表指令: select
                                        • DCL数据控制语言,主要负责权限管理和事务

                                                代表指令: grant,revoke,commit

                                           

                                          详解mysql安装与配置,及Mac中常见的安装问题 第1张

                                          感谢阅读,希望对友友们有所帮助!!! 


    免责声明:我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理! 图片声明:本站部分配图来自人工智能系统AI生成,觅知网授权图片,PxHere摄影无版权图库和百度,360,搜狗等多加搜索引擎自动关键词搜索配图,如有侵权的图片,请第一时间联系我们,邮箱:ciyunidc@ciyunshuju.com。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!

    目录[+]