Mysql安装及基本操作详解

一.环境:

操作系统:Linux Centos7
数据库:Mysql5.7

二.安装步骤

采用二进制包安装,方便定制属性。

  1. 下载mysql 二进制安装包
    https://dev.mysql.com/downloads/mysql/
    选择 linux-Generic
    在这里插入图片描述
    我的版本是:mysql-5.7.17-linux-glibc2.5-x86_64.tar.gz
  2. 查看操作系统是否有自带的mysql,如有则卸载
    rpm -qa | grep mysql
    rpm -qa | grep mariadb
  3. 创建/soft 文件夹并上传压缩包后解压
    mkdir /soft
    tar xvzf mysql-5.7.17-linux-glibc2.5-x86_64.tar.gz
  4. 移动解压后的文件到/usr/local目录下并重命名
    mv mysql-5.7.17-linux-glibc2.5-x86_64 /usr/local/mysql
  5. 创建mysql组及mysql用户
    groupadd mysql
    useradd -m -g -r mysql -s /bin/false mysql
  6. 创建相关目录
    mkdir /var/log/mysql
    mkdir /usr/local/mysql/data
  7. 初始化mysql
   cd /usr/local/mysql/bin
   ./mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --     explicit_defaults_for_timestamp
   内容如下:
   017-03-23T01:57:06.821038Z 0 [Warning] InnoDB: New log files created, LSN=45790
   2017-03-23T01:57:07.048639Z 0 [Warning] InnoDB: Creating foreign key constraint system tables.
   2017-03-23T01:57:07.165356Z 0 [Warning] No existing UUID has been found, so we assume that  this is the first time that this server has been started. Generating a new UUID: 04ed965a-0f6c-11e7-85a1-00163e02462c.
   2017-03-23T01:57:07.167725Z 0 [Warning] Gtid table is not ready to be used. Table 'mysql.gtid_executed' cannot be opened.
   2017-03-23T01:57:07.168255Z 1 [Note] A temporary password is generated for root@localhost: Dlicoc_!h6Vs

—有几条warning是正常的。
—最后一条给出的随机root密码要记住

  1. 生成数据库需要的秘钥文件
    ./mysql_ssl_rsa_setup --datadir=/usr/local/mysql/data
    10.创建my.cnf文件
    Vi /etc/my.cnf
    写入如下内容: —各参数根据环境不同调整
[mysqld]
user=mysql
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
character-set-server=utf8
socket=/tmp/mysql.sock

[client]
port=3306
socket=/tmp/mysql.sock
  1. 添加mysql环境变量
    vi /etc/profile
    在末尾加入:
    export PATH=/usr/local/mysql/bin:$PATH
    保存后退出 执行命令,刷新环境变量
    source /etc/profile
  2. Mysql 服务添加为系统服务
    cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql.service
    chkconfig --add mysql.service —mysql添加为系统服务
    chkconfig --list mysql.service ----查看服务是否添加成功
    chkconfig mysql.service on ----设为开机启动
  3. 启动mysql
    systemctl start mysql.service
  4. 登录mysql
    mysql –u root –p
    然后输入之前随机的密码
  5. 更改root密码
    Mysql> set password=password('123456');
  6. 授予root远程连接权限
    Mysql> grant all privileges on *.* to root@'%' identified by '123456';
    Mysql>flush privileges;

三.Mysql基本操作详解

  1. useradd 创建用户
    -g 指定用户所属组
    -r 建立系统账号
    -m 自动建立用户的登入目录
    -s 指定用户使用的shell 可忽略
    常用 useradd -r -m mysql(用户) -g mysql(组)
  2. 初始化
    ./mysqld --initialize --user=mysql(用户名)
    --basedir=/usr/local/mysql(mysql安装目录)
    --datadir=/usr/local/mysql/data(data文件目录)
    -- explicit_defaults_for_timestamp 具体讲解参考 https://www.cnblogs.com/JiangLe/p/6956865.html
  3. mysqld_safe和mysqld区别
    mysqld_safe是mysqld的守护进程,所以mysqld_safe会在启动mysql后继续监控其运行情况,并在其死机是重启程序。
    主要启动参数:
    --basedir=path mysql安装的目录
    --datadir=path mysql数据的路径
    --socket=path 用于连接本地的unix套接字
    --user={user_name | user_id} 用户名或者用户ID登录(指系统用户而不是mysql授权表中的用户)
  4. 添加为系统服务,详情看:
  5. 关于mysql.sock问题 详情看:https://blog.csdn.net/thanklife/article/details/69225724
  6. mysqladmin mysql官方的shell连接工具
    -u 用户 -h 主机名 -p 密码 -P端口
    mysqladmin -uroot -p password可以更改密码
  7. 授权 grant +select,delete等权限(all privileges所有权限)on my.user库.表(*.*所有库)to root(用户)@ ‘IP地址’ %’ (所有IP) identified by ‘123456’(密码)
    例如:grant all privileges on *.* to root@'%' identified by '123456';
    权限在mysql.user表中,可以select user,host from user;看到,
    注意 :mysql5.7 删除了password字段,user表中密码由 authentication_string 字段表示
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值