zoukankan      html  css  js  c++  java
  • windows、ubuntu、centos7下mysql 的安装与使用

    一、windows 及ubuntu下安装
    windows可以傻瓜式安装,另一种空闲了下来写,也不麻烦

    ubuntu:
    apt-get install mysql 强烈推荐使用ubuntu从这儿就很方便了

    二、centos7: 下安装mysql
    个人建议下载rpm 包yum 安装,那样简单很多,至于下载源 官网啊!网上很多地方都有 mysql 的yum 源 5.7版本的rpm包

    下载 mysql源安装包

    [root@localhost ~]# wget https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm

    -bash: wget: 未找到命令

    wget 命令没有的话,就安装下
    yum -y install wget

    然后继续执行上面的 wget 命令
    [root@localhost ~]# wget https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm

    在线安装Mysql
    yum -y install mysql-community-server

    启动Mysql服务
    systemctl start mysqld

    设置开机启动
    [root@localhost ~]# systemctl enable mysqld
    [root@localhost ~]# systemctl daemon-reload

    修改root本地登录密码
    mysql安装完成之后,在/var/log/mysqld.log文件中给root生成了一个临时的默认密码。记下它一会用来登录mysql,修改密码
    [root@localhost ~]# cat /var/log/mysqld.log | grep password

    [root@localhost ~]# mysql -u root -p
    Enter password:

    输入临时密码 进入mysql命令行;

    mysql> alter user 'root'@'localhost' identified by '你要改的密码';

    三、centos7 tar包下载安装
    wget https://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.19-linux-glibc2.12-x86_64.tar.gz 这里选择下载5.7版本 `tar -xzvf mysql-5.7.19-linux-glibc2.12-x86_64.tar.gz -C /usr/local/` 解压到 /usr/local 下

    mv mysql-5.7.19-linux-glibc2.12-x86_64 /usr/local/mysql 移动到/usr/local下改名成mysql

    3.1 建立myql用户组,及用户
    `groupadd mysql` 建立mysql组 `useradd -rg mysql mysql` 创建mysql用户,并把它添加到系统mysql组里面 # -r 参数表示mysql用户是系统用户,不可用于登录系统 `password mysql` 给mysql用户输入一个密码
    3.2 修改配置文件
    'cd /usr/local/mysql` `mkdir data` 在mysql下添加data目录,先到配置文件去查看下默认目录 /etc/my.cnf

    windows(my.ini) Linux (my-default.cnf)文件 在support-files 目录下
    cd support-files/
    复制my.cnf 到 /etc/my.cnf (mysql启动时自动读取)
    输入命令cp my-default.cnf /etc/my.cnf

    然后配置文件中修改字符乱码等问题

    vim /etc/my.cnf

    [mysql]
    default-character-set=utf8     #解决客户端乱码
    [mysqld]
    default-storage-engine=INNODB
    character_set_server=utf8     #解决服务端乱码
    
    3.3 实现开机启动
    实现开机启动: 复制mysql.server 到/etc/init.d/ 开机启动目录下 【目的想实现mysqld -install这样开机自动执行】 `cp mysql.server /etc/init.d/mysql ` 注意: /etc/init.d/ 目录,等效于注册表HKEY_LOCAL_MACHINESYSTEMControlSet001services记录有那些服务

    也可以在安装好好输入以下命令实现开机启动:注意(这会还没安装完成别输入以下,启动服务和开机启动命令)

    #安装好后先启动Mysql服务
    [root@localhost ~]# systemctl start mysqld
    
    #实现开机启动
    [root@localhost ~]# systemctl enable mysqld
    [root@localhost ~]# systemctl daemon-reload
    
    

    修改/etc/init.d/mysql 参数
    vim /etc/init.d/mysql
    把程序运行目录,和data两个目录位置给它
    basedir=/usr/local/mysql
    datadir=/usr/local/mysql/data

    3.4 初始化数据库
    `cd /usr/local/` ----> `chown -R mysql mysql/` 修改目录权限,把mysql目录的权限给mysql用户 `chgrp -R mysql mysql/`也改到mysql用户组. 或者一个命令: `cd /usr/local/` ----->`chown -R mysql:mysql ./mysql` chown[选项]...[所有者][:[组]] 文件...-R 表示目录下所有文件

    安装和初始化数据库命令:
    ./mysqld --initialize --user=mysql --basedir=/usr/local/mysql/--datadir=/usr/local/mysql/data/


    这儿会生成一个临时密码,记住。该密码也保存在: /var/log/mysqld.log 文件中
    cat /var/log/mysqld.log | grep password

    嗯狗头像那个位置就是了,临时密码

    3.5 启动Mysql服务,并登陆修改密码
    直接启动:bin目录下
    [root@localhost bin]# ./mysqld_safe --user=mysql &  #(&符表示提交到后台运行mysql服务)
    

    或系统启动:随便目录

    [root@localhost ~]# systemctl start mysqld
    

    登录mysql:

    [root@localhost ~]# mysql -uroot -p    #输入刚才记下的临时密码,忘记了去 /var/log/mysqld.log 里面查
    #接着输入密码
    

    修改密码:

    alter user 'root'@'localhost' identified by 'new_password'; #new_password就是换成你自己想要改的密码 ,注意:mysql的每一条命令后面都要加 ; 分号。

    以后也可以通过修改密码字段:注意mysql 5.7 以后 密码字段名称变成:authentication_string

    update mysql.user set authentication_string=password('你的密码') where user='root';

    创建/授权用户:
    查看 test 库是否存在
    不存在就 :
    create database test;

    mysql> show databases;
    +--------------------+
    | Database           |
    +--------------------+
    | information_schema |
    | mysql              |
    | performance_schema |
    | test               |
    | webproject         |
    +--------------------+
    5 rows in set (0.81 sec)
    
    mysql> grant all on test.* to '想要创建的用户名'@'%' identified by 'password';    #1
    Query OK, 0 rows affected, 1 warning (1.13 sec)
    

    1处all 代表所有权限都给了,可以给以下权限中选,查: select 插入:insert 改:update 删: delete 创建: create 删除:drop 等等......嫌麻烦就 all 全给了

    然后 on 数据库名,点 . *代表下面的所有库都可以访问,如果是root用户远程授权,就可以 grant all on . 所有权限,所有库。 '想要创建的用户名' 自己想一个 @ 后面跟 ip 地址,% 代表所有地方都可以访问,localhost 代表只能本地访问, 后面的 identified by ‘password’ 在这儿输入你的密码就好了

    远程访问
    如果有用户需要远程访问:那就需要关闭linux的防火墙 关闭防火墙 (或者给防火墙开放端口),这样window(远程)才能连接上 关闭防火墙命令: `systemctl stop firewalld.service` #关闭防火墙

    一般还是别关防火墙:开端口

    [root@localhost ~]# firewall-cmd --zone=public --add-port=3306/tcp --permanent
    success
    
    [root@localhost ~]# firewall-cmd --reload
    success
    

    再登录Mysql
    mysql>flush privileges; 刷新下

    3.7 远程访问mysql
    远程链接数据库,或者重启(init 6)。 输入命令:mysql –hIP地址 -uroot -p123456
    2. 8 如果前面没有设置自启,或者失败了也可以这样
    没事忽略这步也ok

    添加mysql服务
    输入命令 chkconfig --add mysql

    设置mysql服务为自动
    输入命令 chkconfig mysql on

  • 相关阅读:
    Node js 入门指南(1)
    书单
    JavaScript
    Web框架的本质
    Linux运维面试(填空题)
    Ubuntu更换国内源
    动态路由-OSPF
    CentOS7安装桌面环境
    anaconda系统安装&kickstart文件
    Tomcat之分布式session共享(MSM)
  • 原文地址:https://www.cnblogs.com/shiqi17/p/9363473.html
Copyright © 2011-2022 走看看