• 【MySQL】1.MySQL安装配置


    MySQL官网: https://www.mysql.com/

    一、MySQL的安装配置

    下载需要安装的软件包:  https://dev.mysql.com/downloads/mysql/
    MySQL的安装包有已经编译成二进制文件的,RPM包或者源码,下载二进制文件版本的,直接使用就可以了。按需选择版本。
    [root@node1 soft]# wget https://cdn.mysql.com/archives/mysql-5.7/mysql-5.7.28-linux-glibc2.12-x86_64.tar.gz
    [root@node1 soft]# tar xf mysql-5.7.28-linux-glibc2.12-x86_64.tar.gz
    [root@node1 soft]# mv mysql-5.7.28-linux-glibc2.12-x86_64 /usr/local/mysql
    [root@node1 ~]# yum install libaio -y   #安装MySQL依赖libaio
    [root@node1 ~]# groupadd mysql
    [root@node1 ~]# useradd -r -g mysql -s /bin/false mysql
    [root@node1 ~]# cd /usr/local/mysql/
    [root@node1 mysql]# bin/mysqld  --initialize-insecure  --user=mysql  --basedir=/usr/local/mysql/  --datadir=/data/mysql/   #初始化数据库。在mysql5.7.7以下的版本初始化是mysql_install_db,5.7.7以后则去掉了该脚本,使用了-initialize 或者 --initialize-insecure 参数作为初始化。-initialize初始化是会为root@localhost生成一个随机密码,--initialize-insecure初始化则密码为空。
    [root@node1 mysql]#  bin/mysql_ssl_rsa_setup
    [root@node1 mysql]# bin/mysqld_safe --user=mysql &  #启动时默认回去读取/etc/my.cnf或basedir目录下的my.cnf配置文件,应该按需修改配置文件再启动
    [root@node1 mysql]# cp support-files/mysql.server /etc/init.d/mysqld #按照配置文件里写的修改basedir,datadir,pid_path之后,就可以使用/etc/init.d/mysqld 启停了。也可以使用systemd控制。
    client登录:
    [root@node1 mysql]# /usr/local/mysql/bin/mysql -S /data/mysql/mysql.sock -uroot #MySQL初始化时没有设置密码
    mysql> set password for root@localhost = password('123456');
    [root@node1 mysql]# /usr/local/mysql/bin/mysql -S /data/mysql/mysql.sock -uroot -p
    使用systemd管理进程:
    [root@node1 ~]# vim /usr/lib/systemd/system/mysqld.service          
    [Unit]
    Description=MySQL Server
    Documentation=man:mysqld(8)
    Documentation=http://dev.mysql.com/doc/refman/en/using-systemd.html
    After=network.target
    After=syslog.target
     
    [Install]
    WantedBy=multi-user.target
     
    [Service]
    User=mysql
    Group=mysql
    ExecStart=/usr/local/mysql/bin/mysqld --defaults-file=/usr/local/mysql/my.cnf
    LimitNOFILE = 5000
    [root@node1 mysql]# systemctl daemon-reload
    [root@node1 mysql]# systemctl restart mysqld

    二、用户管理

    建库,建用户,设密码,授权
    create database app01;
    grant all on app01.* to tom identified by '123456';
    grant all on app01.* to tom@'%' identified by '123456';
    grant all on app01.* to tom@192.168.30.12 identified by '123456'; 把app01这个数据库上面的所有权限授权给tom这个用户并设置密码
    grant all on app01.* to tom@192.168.30.12 with grant option; 允许把自己的权限授予给别人
    删除用户 回收权限
    revoke select on app01.* from tom; # 回收tom对数据库app01上的select权限
    revoke all on app01.* from tom; #回收tom对数据库app01上的所有权限
    drop user roy@'192.168.30.11';   #删除用户
    grant usage on *.* to roy@192.168.30.11 identified by '123456'  # 更改密码(usage:基本权限)
    show grants for roy@192.168.30.11  # 查看用户的权限
    grant super on *.* to roy@192.168.30.11;    #给roy用户授予改密码权限
    普通mysql用户更改自己的密码:
    # mysqladmin -h 192.168.20.12 -uroy -p123456 password "1234567"
    # mysqladmin -uroot -p123456 ping  #查看本机mysql是否启动
    # mysqladmin -h192.168.30.12 -uroot -p123456 status
    忘记root登录密码 -- 跳过授权表
    # 命令行添加参数启动MySQL:
    [root@node1 ~]# systemctl stop mysqld
    [root@node1 mysql]# bin/mysqld_safe --skip-grant-tables --skip-networking
    # 配置文件my.cnf添加参数:
    [mysqld]
    skip-grant-tables   #跳过授权表
    skip-networking #开启该选项后就不能远程访问MySQL
    /etc/init.d/mysqld restart
     
    [root@node1 ~]# mysql -S /data/mysql/mysql.sock #无需密码登录
    mysql> update mysql.user set authentication_string=password("123456") where user='root' and host='localhost';  #修改root密码
    mysql> flush privileges;  #刷新授权
    # 重新修改配置文件,然后重启服务器
     
    select current_user() [from dual]; 查看当前用户

    ----

  • 相关阅读:
    CDH6.2安装之离线方式
    impala
    Oracle
    性能调优之Mapping
    Informatica
    性能瓶颈之System
    性能瓶颈之Session
    本地Oracle客户端11g升级12c导致PowerCenter无法连接ODBC数据源
    性能瓶颈之Mapping
    性能瓶颈之Source
  • 原文地址:https://www.cnblogs.com/cmxu/p/12396142.html
Copyright © 2020-2023  润新知