• centOS安装Mysql指南


    centOS安装Mysql指南

    说明:使用操作系统centOS6.4 32位系统;mysql:mysql-5.7.10-linux-glibc2.5-i686.tar.gz;

    一、准备

    下载mysql 

    wget http://mirrors.sohu.com/mysql/mysql:mysql-5.7.10-linux-glibc2.5-i686.tar.gz

    注:所有shell命令都以root用户执行。随着mysql版本的更新,新版本的安装方式会有所更改,可以参考mysql压缩包中的INSTALL-BINARY文件。 

    此处我下载的是MySQL-5.7下的mysql-5.7.10-linux-glibc2.5-x86_64.tar.gz  

    二、解压缩文件并移动到指定目录 

    在home文件夹下创建一个mysql文件夹,作为存放mysql文件的目录

    [root@localhost ~]# cd /home 

    [root@localhost ~]# mkdir mysql 

    回到保存下载压缩文件的目录解压压缩文件

    [root@localhost ~]# cd /home/user/Downloads 

    [root@localhost ~]# tar -zxvf mysql-5.7.10-linux-glibc2.5-x86_64.tar.gz 

    移动文件到指定目录 

    [root@localhost ~]# mv mysql-5.7.10-linux-glibc2.5-x86_64  /home/mysql/mysql-5.7.10 

    三、安装运行mysql所需的包 

    [root@localhost ~]# yum search libaio 

    [root@localhost ~]# yum install libaio

    四、安装及配置mysql

    参照mysql文件中的INSTALL-BINARY;

    [root@localhost ~]# groupadd mysql #添加一个mysql用户组

    [root@localhost ~]# useradd -r -g mysql -s /bin/false mysql #设置-s /bin/false表示mysql不能作为登入用户

    [root@localhost ~]# cd /usr/local [root@localhost ~]# ln -s /home/mysql/mysql-5.7.10 mysql#在/usr/local/目录下创建一个mysql链接

    [root@localhost ~]# cd mysql [root@localhost ~]# mkdir data #作为存放数据的目录

    [root@localhost ~]# chmod 770 data #修改data目录的进入权限

    [root@localhost ~]# chown -R mysql:mysql . #修改当前文件夹的用户权限和组权限

    [root@localhost ~]# bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data  # MySQL 5.7.10初始化设置

    执行该命令后,注意最后一行的[Note]信息 

    [Note] A temporary password is generated for root@localhost: )9AsdF(+86h49 生成的初始密码在首次以root用户登入时使用;

    [root@localhost ~]# bin/mysql_ssl_rsa_setup --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data   # MySQL 5.7.10安全连接设置 

    [root@localhost ~]# chown -R root . 
    [root@localhost ~]# chown -R mysql data  
    [root@localhost ~]# cd /var/log 
    [root@localhost ~]# mkdir mysql  #作为存放数据库运行日志的文件夹 

    [root@localhost ~]# cd /usr/local/mysql/ 

    [root@localhost ~]# bin/mysqld_safe --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data & #此命令在后台运行

    将mysql加入到可控制启动服务的文件夹内,并命名mysql,即service可控制的服务名,届时可用service mysql start|stop控制启动及关闭mysql 

    [root@localhost ~]# cp support-files/mysql.server /etc/init.d/mysql 

    至此可用service mysql start来启动mysql数据库。  
    配置开机启动mysql服务 

    [root@localhost ~]# chkconfig --add mysql 
    [root@localhost ~]# chkconfig --level 2345 mysql on

    五、首次登入mysql 
    [root@localhost ~]# mysql -u root -p 
    Enter password:输入之前生成的临时密码 mysql> SET PASSWORD = PASSWORD('123456');  #注意最后的分号;

    六、其他配置 

    a) 开启防火墙mysql 3306端口的外部访问 CentOS升级到7之后,使用firewalld代替了原来的iptables。

    下面记录如何使用firewalld开放Linux端口 

    --zone      : 作用域,网络区域定义了网络连接的可信等级。这是一个一对多的关系,这意味着一次连接可以仅仅是一个区域的一部分,而一个区域可以用于很多连接

    --add-port  : 添加端口与通信协议,格式为:端口/通讯协议,协议是tcp 或 udp

    --permanent : 永久生效,没有此参数系统重启后端口访问失效

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

    [root@localhost ~]#  firewall-cmd --reload  #重启防火墙 

    b) 五个mysql的GRANT例子 (mysql的用户,非Centos用户) 

    例一、允许使用用户名root密码123456从任何主机连接到mysql服务器 ,该创建的root账号只是从外部访问的账号,与内部linux访问该mysql时所用root不同,内部linux访问该mysql的root账号也不是linux的系统root账号 

    mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION; 
     
    例二、给来自192.168.155.1的用户user1分配可对数据库dbname的tablename表进行SELECT,INSERT,UPDATE,DELETE,CREATE,DROP等操作的权限,并设定密码为123456。 对表操作权限还有好多如ALTER等 

    mysql>GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP ON dbname.tablename TO 'user1'@'192.168.155.1' IDENTIFIED BY '123456'; 

    mysql>GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP ON dbname.tablename TO 'user1'@'192.168.155.1' IDENTIFIED BY '123456'; 

    例三、给来自192.168.155.1的用户user2分配可对数据库dbname所有表进行所有操作的权限,并设定口令为123456。 

    mysql>GRANT ALL PRIVILEGES ON dbname.* TO 'user2'@'192.168.155.1' IDENTIFIED BY '123456'; 

    例四、给来自192.168.155.1的用户user3分配可对所有数据库的所有表进行所有操作的权限,并设定口令为123456。 

    mysql>GRANT ALL PRIVILEGES ON *.* TO 'user3'@'192.168.155.1' IDENTIFIED BY '123456'; 

    例一、给本机用户user4分配可对所有数据库的所有表进行所有操作的权限,并设定口令为123456。 

    mysql>GRANT ALL PRIVILEGES ON *.* TO 'user4'@'localhost' IDENTIFIED BY '123456';   

    例五、刷新权限 ;

    mysql>FLUSH PRIVILEGES;

    c)   参考: 

    1、mysql安装文件中的INSTALL-BINARY文件 

    2、http://www.cnblogs.com/dreamhome/p/4716425.html;

    3、linux配置防火墙打开3306端口

    4、CentOS7 Firewall防火墙详解

    我也是初学mysql,才疏学浅,肯定有说得不好的地方,希望大家多多指点,我会及时改正,但请千万不要恶语相加啊!谢谢。

    如果喜欢本文,请在后面留个言哈。


    作者:EliteQing
    出处:http://www.cnblogs.com/liinux/
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

    欢迎加入网络爬虫QQ群:322937592 ;数据分析&网络爬虫
    网络爬虫模拟登录开源项目ghost-login:ghost-login
    微信订阅号:网络爬虫AI数据分析【WebCrawlerAIDA】

     
  • 相关阅读:
    延时显示(类QQ头像显示)
    getComputedStyle与currentStyle获取样式(style/class)
    私单
    厂里
    009 vue的响应式方法
    008 vue的v-for的使用及key的使用
    007 v-if,v-else-if,v-else和v-show
    006 Vue的v-on
    005 Vue 计算属性
    004 Vue的v-bind属性
  • 原文地址:https://www.cnblogs.com/liinux/p/5095717.html
Copyright © 2020-2023  润新知