MySQL系列之(一) -------- mysql安装

目录

一、Windows安装mysql

1、提取MySQL的Windows免安装版的安装包到安装目录下

2、创建选项文件

3、选择mysql的服务器类型

4、初始化数据目录

5、启动服务器

6、关闭mysql服务器

7、安装mysql作为Windows服务

 

二、Centos系统上通过免安装包安装mysql

1、安装之前

2、下载免安装包

3、解压tar文件

4、修改解要后文件的名字

5、创建mysql用户

6、修改mysql的配置文件

7、安装libaio

8、修改日志文件的权限和文件的操作用户

9、初始化mysql

10、查看初始密码

11、启动mysql

12、连接mysql

13、修改初始密码

14、授权远程登录

三、使用CentOS的yum的方式安装

四、使用docker安装mysql

五、安装并激活Navicat

windows系统下安装并激活Navicat

Mac系统环境下安装并激活Navicat


一、Windows安装mysql

MySQL的在Windows上的安装方式分为几种,包括:通过安装程序安装,通过免安装版的zip包安装,以及docker镜像安装。我这里介绍的是通过MySQL的免安装包安装。安装过程来自MySQL的官方文档,建议直接参考官方文档。

通过mysql的免安装包安装的步骤分为一下几步:

(1)提取组程序包到安装目录下,并解压。

(2)创建一个选项文件

(3)选择一个mysql的服务器类型

(4)初始化mysql

(5)启动mysql的服务器

(6)保护默认的用户帐户

具体的每一步操作如下:

1、提取MySQL的Windows免安装版的安装包到安装目录下

直接去MySQL的官网下载,这里提供一个连接:windows版MySQL-8.0.15下载,下载以后,将安装包解压到安装目录下。

注意:这里在安装之前需要确保是你的登录用户的权限是administrator权限。

2、创建选项文件

在启动mysql服务器的时候,你可以通过命令行的方式配置服务器启动选项,但是为了方便,我们一般会使用选项文件类配置服务器启动的选项。在一下两种情况下,使用选项文件也的确会方便很多:

(1)、mysql的安装目录或数据文件的目录不是默认的目录

(2)、需要调用服务器配置的时候,比如:内存配置,缓存配置,数据库引擎配置等。

当mysql服务器启动的时候,会自动地在C盘和mysql的安装目录下查找选项文件,mysql首先会从my.ini文件查找选项配置,其次是my.cnf文件,这两个文件必须是纯文本文件。

3、选择mysql的服务器类型

mysql的服务器分为mysqld和mysqld-debug,这两者之间没有太大的差别,我们用的是mysqld,关于mysqld-debug的介绍,可以查看官网。

4、初始化数据目录

在mysql安装完成之后,必须初始化数据目录和系统表。

在C盘根目录下创建my.ini文件,并添加如下配置:

            [mysqld]
            basedir=E:\\mysql
            datadir=E:\\mysql\\data

执行以下命令,进行初始化:

            bin\mysqld --defaults-file=C:\\my.ini --initialize-insecure --console

执行该语句后,console会输出一下内容,表示data directory初始化成功了:

            [System] [MY-013169] [Server] E:\mysql-8.0.15-winx64\bin\mysqld.exe  initializing of server in progress as process 6463
            [Warning] [MY-010453] [Server] root@localhost is created with an empty password! Please consiger switching off th --initialize-insecure option.
            [System] [MY-013170] [Server] E:\mysql-8.0.15-winx64\bin\mysqld.exe  initializing of server has completed

初始化过程中,mysql会做一下事情:

(1)、检查数据目录是否存在,如果不存在就创建一个,如果存在,并且不为空,那么初始化服务退出,并报如下异常:

            [ERROR] --initialize specified but the data directory exists. Aborting.

(2)、在数据目录中,服务器创建mysql系统模式及其表,包括数据字典表,授权表,时区表和服务器端帮助表

(3)、服务器初始化管理InnoDB表所需要的系统表空间和相关数据结构。

(4)、服务器创建 'root'@'localhost' 超级用户和其他保留帐户。一些保留帐户被锁定,并且不能被客户端使用,但是 'root'@'localhost' 被用于管理并且你应该为该帐户设置密码。

(5)、服务器添加服务端帮助表格数据,但是time zone tables并不会添加数据,需要手动完成。

5、启动服务器

命令行cd到mysql的安装目录下,执行以下命令:

            bin\mysqld --console

启动成功以后,console会输出一下信息:

            [System][MY-010931][Server]E:\mysql\bin\mysqld.exe:ready for connections.Version:'8.0.15' socket:'' port:3306 MySQL community Server -GPL.

6、关闭mysql服务器

            bin\mysqladmin -u root shutdown

7、安装mysql作为Windows服务

当Windows启动和关闭的时候,自动启动和关闭mysql,执行以下命令来安装mysql为Windows服务:

            bin\mysqld --install

 

二、Centos系统上通过免安装包安装mysql

首先需要提示一点,我之前一直使用的是CentOS7的系统,安装mysql以后不能启动,网上说是因为CentOS7系统对mysql不友好,所以我使用了CentOS6系统再次安装了mysql,一次成功。

1、安装之前

先检查是否有之前安装过的MySQL的遗留文件,并删除这些遗留文件:

(1)、通过:find / -name mysql 查找到所有的MySQL的文件位置并删除

(2)、删除 /etc/my.cnf 或 /etc/mysql

2、下载免安装包

        wget https://cdn.mysql.com//Downloads/MySQL-8.0/mysql-8.0.16-linux-glibc2.12-x86_64.tar.xz

3、解压tar文件

        tar -xvf mysql-8.0.16-linux-glibc2.12-x86_64.tar.xz

     如果上面的解压过程失败,可以使用以下方式:

        #先安装xz    
        yum install xz -y
        #然后将tar.xz包转换为tar包
        xz -d mysql-8.0.16-linux-glibc2.12-x86_64.tar.xz
        #最后解压tar包
        tar -xvf mysql-8.0.16-linux-glibc2.12-x86_64.tar

4、修改解要后文件的名字

        mv mysql-8.0.16-linux-glibc2.12-x86_64 mysql

      解压后的mysql的目录结构是这样的:

            drwxr-xr-x.  2 7161 31415   4096 4月  14 07:06 bin
            drwxr-xr-x.  2 7161 31415     86 4月  14 07:06 docs
            drwxr-xr-x.  3 7161 31415    261 4月  14 07:06 include
            drwxr-xr-x.  6 7161 31415   4096 4月  14 07:06 lib
            -rw-r--r--.  1 7161 31415 335809 4月  13 19:46 LICENSE
            -rw-r--r--.  1 7161 31415 101807 4月  13 19:46 LICENSE.router
            drwxr-xr-x.  4 7161 31415     30 4月  14 07:06 man
            -rw-r--r--.  1 7161 31415    687 4月  13 19:46 README
            -rw-r--r--.  1 7161 31415    700 4月  13 19:46 README.router
            drwxrwxr-x.  2 7161 31415      6 4月  14 07:06 run
            drwxr-xr-x. 28 7161 31415   4096 4月  14 07:06 share
            drwxr-xr-x.  2 7161 31415     77 4月  14 07:06 support-files
            drwxr-xr-x.  3 7161 31415     17 4月  14 07:06 var

5、创建mysql用户

            groupadd mysql
            useradd -r -g mysql mysql
            chown -R mysql /home/mysql/
            chgrp -R mysql /home/mysql/

6、修改mysql的配置文件

      先进入到文件/etc/my.cnf中:vim /etc/my.cnf

      将以下内容复制进去:

            [client]
            port = 3306
            socket = /tmp/mysql.sock
            [mysqld]
            character_set_server=utf8
            init_connect='SET NAMES utf8'
            socket=/tmp/mysql.sock
            basedir=/home/mysql #mysql的安装目录
            datadir=/home/mysql/data #mysql安装目录下的数据目录,这个目录需要手动创建
            log-error=/home/mysql/log/mysqld.log #mysql的日志文件,需要手动创建
            pid-file=/home/mysql/mysqld.pid
            #不区分大小写
            lower_case_table_names = 1
            max_connections=5000
            default-time_zone = '+8:00'

7、安装libaio

            yum -y install libaio

8、修改日志文件的权限和文件的操作用户

            cd /home/mysql/log
            chmod 777 mysqld.log
            chown mysql:mysql mysqld.log

       修改完成以后查看mysqld.log的文件是这样的:

            [root@localhost log]# ll
            -rwxrwxrwx. 1 mysql mysql 0 7月  21 22:00 mysqld.log

9、初始化mysql

            /home/mysql/bin/mysqld --initialize --user=mysql --basedir=/home/mysql --datadir=/home/mysql/data

        如果初始化出现以下错误:

            [root@localhost log]# /home/mysql/bin/mysqld --initialize --user=mysql --basedir=/home/mysql --datadir=/home/mysql/data
            /home/mysql/bin/mysqld: error while loading shared libraries: libnuma.so.1: cannot open shared object file: No such file or directory

        安装:libnuma.so.1

            yum install libnuma.so.1 -y

        如果还是报错,安装:numactl.x86_64

            yum -y install numactl.x86_64

        然会初始化,正确

            /home/mysql/bin/mysqld --initialize --user=mysql --basedir=/home/mysql --datadir=/home/mysql/data

10、查看初始密码

            cat /home/mysql/log/mysqld.log
            2019-07-21T14:22:32.030141Z 5 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: hF>s_e7jwjoV

          hF>s_e7jwjoV就是初始密码,在root@localhost后面

11、启动mysql

            service mysqld start

         如果提示错误 “mysqld: 未被识别的服务”,那么需要把mysql.server复制到init.d目录下

            [root@localhost mysql]# find / -name mysql.server
            /home/mysql/support-files/mysql.server
            [root@localhost support-files]# cp /home/mysql/support-files/mysql.server /etc/init.d/mysqld

         然后再启动mysql:

            [root@localhost init.d]# service mysqld start
            Starting MySQL. SUCCESS!

12、连接mysql

            mysql -uroot -p

          如果出现以下错误提示:     -bash: mysql: command not found   ,需要将mysql添加到/usr/bin中,然后再启动

            [root@localhost init.d]# ln -s /home/mysql/bin/mysql /usr/bin/
            [root@localhost init.d]# mysql -uroot -p
            Enter password:
            Welcome to the MySQL monitor.  Commands end with ; or \g.
            Your MySQL connection id is 8
            Server version: 8.0.16

            Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved.

            Oracle is a registered trademark of Oracle Corporation and/or its
            affiliates. Other names may be trademarks of their respective
            owners.

            Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

            mysql>

13、修改初始密码

            mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'admin123';
            Query OK, 0 rows affected (0.01 sec)

          admin123是新密码

14、授权远程登录

       如果需要在其他的电脑上连接mysql,需要进行远程登录授权

            #先创建远程登录的用户名和密码,test是用户名,%表示允许所有的远程ip登录,123456表示密码
            mysql> create user 'test'@'%' identified by '123456';
            Query OK, 0 rows affected (0.02 sec)

            #然后授权
            mysql> grant all privileges on *.* to 'test'@'%' with grant option;
            Query OK, 0 rows affected (0.01 sec)

 

 

三、使用CentOS的yum的方式安装

1.查看之前是否有安装MySQL

          yum list installed | grep mysql

2.如果有就卸载

          yum -y remove name

3.查看之前安装mysql的遗留文件

          find / -name mysql

4.如果有就删除

          rm -rf name

5.Adding the MySQL Yum Repository

          yum localinstall platform-and-version-specific-package-name.rpm

6.Selecting a Release Series

          yum repolist enabled | grep mysql

7.Installing MySQL

          yum install mysql-community-server

8.Starting the MySQL Server

          service mysqld start

9.A superuser account 'root'@'localhost is created. A password for the superuser is set and stored in the error log file. To reveal it, use the following command:

          grep 'temporary password' /var/log/mysqld.log

7JKlH+m:Wpp:

 

/usr/bin/mysqladmin -u root password 'new-password'

/usr/bin/mysqladmin -u root -h sanxin-host password 'new-password'

+---------------+------+-------------------------------------------+
| Host          | User | Password                                  |
+---------------+------+-------------------------------------------+
| localhost     | root | admin@123                                 |
| sanxin-host   | root |                                           |
| 127.0.0.1     | root |                                           |
| ::1           | root |                                           |
| localhost     |      | admin@123                                 |
| sanxin-host   |      |                                           |
| %             | root | *87683DC6F262224C77766AE5FB37E7BDE0A17FEE |
| 192           | root | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 |
| 192.168.0.203 | root | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 |
| 192.168.0.201 | root | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 |
+---------------+------+-------------------------------------------+

FHost '192.168.0.203' is not allowed to connect to this mysql serverConnection closed by foreign host

当然,如果想给所有ip都赋予权限,则这样:

grant all privileges on *.* to 'root'@'%' identified by '123456';

3.使授权立即生效

flush privileges;

四、使用docker安装mysql

五、安装并激活Navicat

windows系统下安装并激活Navicat

可以参考这个博客,写的很好,亲测有用:https://www.jianshu.com/p/5f693b4c9468

Mac系统环境下安装并激活Navicat

可以参考这个博客:https://blog.csdn.net/wangyaodong915/article/details/82958372

但是要记住一点,就是在激活navicat的时候,需要断开电脑的网络连接,构造是不能出现手动激活的选项的。

 

你可能感兴趣的:(MySQL系列)