zoukankan      html  css  js  c++  java
  • mysql下载与安装过程

     

    1:下载MySql

     官网下载地址:https://dev.mysql.com/downloads/mysql/

     选择对应的下载文件。(我电脑是64位,所以这下载的是64位的下载文件)

     不会下载可以网上搜索“”“mysql官网下载”,会出现很多教程,推荐一个位置:“https://www.cnblogs.com/pipi-changing/p/5452477.html”

    2:安装MySql

     打开下载文件解压到指定文件目录。(我这里解压目录为D:mysql-5.7.21-winx64)

     打开解压后的MySql文件在根目录下创建my.ini (mysql配置文件)

    关于my.ini配置文件可以直接百度搜索,下面仅列出简单配置

     my.ini文件内容如下:
    (建议直接复制粘贴下面文件)

     注意  :这里需要将basedir 与 datadir 路径改成自己mysql的解压路径 ,即mysql的文件路径

    1.  
      [mysql]
    2.  
       
    3.  
      # 设置mysql客户端默认字符集
    4.  
       
    5.  
      default-character-set=utf8
    6.  
       
    7.  
      [mysqld]
    8.  
       
    9.  
      #设置3306端口
    10.  
       
    11.  
      port = 3306
    12.  
       
    13.  
      # 设置mysql的安装目录
    14.  
       
    15.  
      basedir=D:mysql-5.7.21-winx64
    16.  
       
    17.  
      # 设置mysql数据库的数据的存放目录
    18.  
       
    19.  
      datadir=D:mysql-5.7.21-winx64data
    20.  
       
    21.  
      # 允许最大连接数
    22.  
       
    23.  
      max_connections=200
    24.  
       
    25.  
      # 服务端使用的字符集默认为8比特编码的latin1字符集
    26.  
       
    27.  
      character-set-server=utf8
    28.  
       
    29.  
      # 创建新表时将使用的默认存储引擎
    30.  
       
    31.  
      default-storage-engine=INNODB

    找到CMD命令提示符,右键以管理员身份运行(必须以管理员身份运行,否则安装过程报错

    进入mysql子目录bin

    依次输入:mysqld --install (安装) mysqld --initialize (初始化)net start mysql(运行)

    若mysqld --install (安装)过程出现问题,检查配置文件basedir 与 datadir 路径的设置问题,

    mysqld --initialize (初始化)过程出现问题,检查D:mysql-5.7.21-winx64根目录下是否生成data文件,

    3:设置MySql登录密码

     早在之前几个版本mysql root账户的默认密码就不是空了,如果用空密码登录一定会报错。

    mysql安装完成后打开mysql安装目录里面的data文件夹, 里面有个.err文件,用记事本打开,可以看到里面有行

    A temporary password is generated for root@localhost: xxxxxxxx       

     localhost:后面的就是默认密码,复制这个密码即可登录,

    登录成功后必须重设密码,否则会一直提示下面这行错误。

     You must reset your password using ALTER USER statement before executing this statement.

    执行下面命令重设密码,就可以正常使用了。(推荐第三种,以方便连接sqlyogent工具)

    第一种:SET PASSWORD = PASSWORD('NEW PASSWORD')

    第二种:alter user user() identified by "123456";

    第三种:ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '新密码';  

    另一种方式设置MYSQL密码(这个方法不是每个人可以成功)。

     密码设置步骤:

    1. 在my.ini文件末尾加上“skip-grant-tables”(取消权限设置)保存文件
    2. 重启mysql服务
    3. cmd下进入mysql - bin目录,输入 mysql -u root -p ,回车,这时候不需要密码即可登录
    4. 重置密码。输入 use mysql 回车
    5.  输入update user set authentication_string=password("newPassword") where user="root"; (新版本下mysql数据库password字段更改为authentication_string)
    6. 删除my.ini文件末尾“ skip-grant-tables”保存文件
    7. 重启mysql服务,就可以用新密码登录root账户

    ———————————————安装完成———————————————

    可以用 命令查看一下默认安装的数据库:

    show databases;

    use mysql;

    show tables;

    复制代码
    复制代码
    mysql> show databases;
    +--------------------+
    | Database           |
    +--------------------+
    | information_schema |
    | mysql              |
    | performance_schema |
    | sys                |
    +--------------------+
    4 rows in set (0.01 sec)
    
    mysql>
    复制代码
    复制代码

    看到默认初始化了mysql数据库,其中user表里面存储MySQL用户信息。我们可以看一下默认MySQL用户:

     select user,host,authentication_string from mysql.user;

    复制代码
    复制代码
    mysql> select user,host,authentication_string from mysql.user;
    +------------------+-----------+-------------------------------------------+
    | user             | host      | authentication_string                     |
    +------------------+-----------+-------------------------------------------+
    | mysql.infoschema | localhost | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE |
    | mysql.session    | localhost | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE |
    | mysql.sys        | localhost | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE |
    | root             | localhost | *27C237A977F4F44D3F551F1A673BE14DFD232961 |
    +------------------+-----------+-------------------------------------------+
    4 rows in set (0.00 sec)
    
    mysql>
    复制代码
    复制代码

    管理员root的host是localhost,代表仅限localhost登录访问。如果要允许开放其他ip登录,则需要添加新的host。如果要允许所有ip访问,可以直接修改成“%

    创建用户:

    CREATE USER 'xxh'@'%' IDENTIFIED WITH mysql_native_password BY 'xxh123!@#';

    #(需要注意:mysql8.0加密方式修改了)
    #检查用户

    select user, host, plugin, authentication_string from userG;

    授权远程数据库

    #授权所有权限 
    GRANT ALL PRIVILEGES ON *.* TO 'xxh'@'%';
    #授权基本的查询修改权限,按需求设置
    GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP,ALTER ON *.* TO 'xxh'@'%';

    查看用户权限
    show grants for 'xxh'@'%';

    示例:

    复制代码
    复制代码
    mysql> use mysql;
    Database changed
    mysql> CREATE USER 'xxh'@'%' IDENTIFIED WITH mysql_native_password BY 'xxh123!@#'; #创建用户(注意:mysql8.0加密方式修改了)
    Query OK, 0 rows affected (0.07 sec)
    mysql> 
    复制代码
    复制代码

    查看密码加密方式:

    复制代码
    复制代码
    mysql> select user, host, plugin, authentication_string from user;
    +------------------+-----------+-----------------------+-------------------------------------------+
    | user             | host      | plugin                | authentication_string                     |
    +------------------+-----------+-----------------------+-------------------------------------------+
    | xxh              | %         | mysql_native_password | *70FD6FB4F675E08FF785A754755B5EBA6DA62851 |
    | mysql.infoschema | localhost | mysql_native_password | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE |
    | mysql.session    | localhost | mysql_native_password | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE |
    | mysql.sys        | localhost | mysql_native_password | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE |
    | root             | localhost | mysql_native_password | *27C237A977F4F44D3F551F1A673BE14DFD232961 |
    +------------------+-----------+-----------------------+-------------------------------------------+
    5 rows in set (0.00 sec)
    
    mysql>
    复制代码
    复制代码

      另外,如果需要新增账户,或者本机以外的其他人访问MySQL则还需要设置内置账户的host,具体可以参考:MySQL创建用户与授权

    参考自:http://www.cnblogs.com/xiongzaiqiren/p/8970203.html

  • 相关阅读:
    类和对象的一些BIF
    mac入门--通过hhomebrew下载过慢问题
    Vue的组件及传参
    Vue的指令和成员
    Vue基础(1)
    Python中好用的模块们
    Django-Auth认证模块
    Django杂篇(2)
    Django杂篇(1)
    Django的日常-AJAX
  • 原文地址:https://www.cnblogs.com/yunian139/p/9537230.html
Copyright © 2011-2022 走看看