zoukankan      html  css  js  c++  java
  • 在centos6.5中安装mysql5.7

    简介

    博主最近在研究mysql的读写分离和主从复制,一台master和两台slave,三台机器在同一个局域网中,首先就就要在centos6.5中安装mysql5.7。好了,废话不多说,接下来进入正题。

    一、解压缩到/usr/local/下面,mysql的主目录命名为mysql

    [root@localhost local]# cd /usr/local/soft/
    
    [root@localhost soft]# tar zvxf mysql-5.7.10-linux-glibc2.5-i686.tar.gz -C /usr/local
    
    [root@localhost soft]# cd ..
    
    [root@localhost local]# mv mysql-5.7.10-linux-glibc2.5-i686/ mysql

    二、在mysql下面创建data数据库文件目录

    [root@localhost local]# mkdir mysql/data

    三、创建mysql的用户组和用户,并对mysql目录设置用户组和用户

    [root@localhost local]# groupadd mysql
    
    [root@localhost local]# useradd mysql -g mysql
    
    [root@localhost local]# cd mysql
    
    [root@localhost mysql]# pwd
    
    /usr/local/mysql
    
    [root@localhost mysql]# chown -R mysql . #给名称为mysql的用户授权
    
    [root@localhost mysql]# chgrp -R mysql .

    四、初始化mysql并启动mysql服务

    [root@localhost mysql]# cd /usr/local/mysql/bin
    
    [root@localhost bin]# yum install libaio
    
    [root@localhost bin]# ./mysql_install_db --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data
    
    2016-01-09 12:00:28 [WARNING] mysql_install_db is deprecated. Please consider switching to mysqld --initialize
    
    2016-01-09 12:00:33 [WARNING] The bootstrap log isn't empty:
    
    2016-01-09 12:00:33 [WARNING] 2016-01-09T04:00:29.262989Z 0 [Warning] --bootstrap is deprecated. Please consider using --initialize instead
    
    2016-01-09T04:00:29.264643Z 0 [Warning] Changed limits: max_open_files: 1024 (requested 5000)
    
    2016-01-09T04:00:29.264653Z 0 [Warning] Changed limits: table_open_cache: 431 (requested 2000)
    
    [root@localhost bin]# cd /usr/local/mysql/support-files
    
    [root@localhost support-files]# ./mysql.server start
    
    Starting MySQL. SUCCESS! 

    五、登录mysql,此版本最新版不许空密码登录,实际上有个初始化密码保存在/root/.mysql_secret这个文件里面,用这个密码第一次登录后,再修改密码。因此先cat查看下初始化密码(随机的,每次安装看到的密码都不一样):

    [root@localhost ~]# cat /root/.mysql_secret
    
    # Password set for user 'root@localhost' at 2016-11-10 20:19:35
    2t:tRP01UZ16
    
    #利用初始化密码:2t:tRP01UZ16 开始登录mysql:
    
    [root@localhost ~]# cd /usr/local/mysql/bin
    
    [root@localhost bin]# ./mysql -uroot -p:2t:tRP01UZ16
    
    mysql: [Warning] Using a password on the command line interface can be insecure.
    
    Welcome to the MySQL monitor.  Commands end with ; or g.
    
    Your MySQL connection id is 5
    
    Server version: 5.7.10
    Copyright (c) 2000, 2015, Oracle and/or its affiliates. All rights reserved.
    
    Oracle is a registered trademark of Oracle Corporation and/or its
    
    affiliates. Other names may be trademarks of their respective
    
    owners.
    Type 'help;' or 'h' for help. Type 'c' to clear the current input statement.
    
    mysql>

    显示登录成功,可以执行mysql命令操作了!

    六、改mysql的root密码,新密码在此为'admin'

    mysql> set password=password('admin');
    
    Query OK, 0 rows affected, 1 warning (0.00 sec)

    七、设定远程登录mysql。在Linux下为了安全,默认是不允许mysql本机以外的机器访问mysql数据库服务,因此需要重新授权root。方便远程访问。

    mysql> use mysql;
    
    Reading table information for completion of table and column names
    
    You can turn off this feature to get a quicker startup with -A
    
    Database changed
    
    mysql> select Host,User from user;
    
    +-----------+-----------+
    
    | Host      | User      |
    
    +-----------+-----------+
    
    | %         | root      |
    
    | localhost | mysql.sys |
    
    | localhost | root      |
    
    +-----------+-----------+
    
    3 rows in set (0.00 sec)
    
    mysql> GRANT ALL PRIVILEGES ON *.* TO root@'%' identified by 'admin';
    
    Query OK, 0 rows affected, 1 warning (0.00 sec)
    
    mysql> flush privileges;
    
    Query OK, 0 rows affected (0.00 sec)

    授权语句最后的‘admin’是mysql数据库root用户的新密码。

    八、非必要的步骤,如果远程连不上,估计是防火墙的问题,关闭试试:

    [root@localhost mysql]# service iptables stop
    
    setenforce 0iptables:将链设置为政策 ACCEPT:filter        [确定]
    
    iptables:清除防火墙规则:                                 [确定]
    
    iptables:正在卸载模块:                                   [确定]
    
    [root@localhost mysql]# setenforce 0
    
    setenforce: SELinux is disabled

    九、将mysql设置为开机自启动,并添加软连接

    [root@localhost mysql]# cd /usr/local/mysql/support-files/
    
    [root@localhost support-files]# cp mysql.server /etc/init.d
    
    [root@localhost support-files]# cd /etc/init.d
    
    [root@localhost init.d]# mv mysql.server mysqld
    
    [root@localhost init.d]# cd /usr/bin
    
    [root@jacky bin]# ln -s /usr/local/mysql/bin/mysql mysql

    注意问题:存放mysql解压文件路径/usr/local/mysql和存放mysql数据路径/usrl/local/mysql/data ,博主刚开始以为这个路径是自定义的,就命名为/usr/local/mysql5.7和/usrl/local/mysql5.7/data结果没安装成功了,但是启动不了,最后只能卸载了重新安装

  • 相关阅读:
    《程序员代码面试指南》第五章 字符串问题 去掉字符串中连续出现k 个0 的子串
    《程序员代码面试指南》第五章 字符串问题 字符串中数字子串的求和
    《程序员代码面试指南》第五章 字符串问题 判断两个字符串是否互为变形词
    《程序员代码面试指南》第三章 二叉树问题 统计和生成所有不同的二叉树
    《程序员代码面试指南》第三章 二叉树问题 Tarjan算法与并查集解决二叉树节点间最近公共祖先的批量查询问题
    《程序员代码面试指南》第三章 二叉树问题 在二叉树中找到两个节点的最近公共祖先
    《程序员代码面试指南》第三章 二叉树问题 找到二叉树中符合搜索二叉树条件的最大拓扑结构
    《程序员代码面试指南》第三章 二叉树问题 判断t1 树中是否有与t2 树拓扑结构完全相同的子树
    #使用Python的turtle绘制正六边形、叠边形
    #Python语言程序设计Demo
  • 原文地址:https://www.cnblogs.com/520playboy/p/6052495.html
Copyright © 2011-2022 走看看