美文网首页
centeros 7和centeros 6 安装mysql

centeros 7和centeros 6 安装mysql

作者: 罗宾船长 | 来源:发表于2018-10-17 10:37 被阅读0次

    安装 Mysql ( centos 7 )
    ( 如果有就先卸载 rpm -qa|grep mysql ,删除对应的包,比如 rpm -e mysql57-community-release-el7-8.noarch)

    下载mysql源安装包
    (centos 7下载这个)
    shell> wget http://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm
                      
    安装mysql源
    (centos 7)
    shell> yum localinstall mysql57-community-release-el7-8.noarch.rpm
     验证源安装是否成功
    yum repolist enabled | grep "mysql.*-community.*"
                
    设置默认需要安装的mysql版本(如果安装5.7可以忽略本步骤)
    可以修改vim /etc/yum.repos.d/mysql-community.repo源,改变默认安装的mysql版本。比如要安装5.6版本,就将5.7源的enabled=1改成enabled=0。然后再将5.6源的enabled=0改成enabled=1即可。
                
    安装
                
    yum install mysql-community-server 
    启动 mysql
    systemctl start mysqld
    #停止systemctl stop mysqld
    查看状态 
    systemctl status mysqld
    设置开机启动 
    systemctl enable mysqld
    systemctl daemon-reload
    修改root本地登录密码   
    mysql安装完成之后,在/var/log/mysqld.log文件中给root生成了一个默认密码。
    通过下面的方式找到root默认密码(有时候生成的密码是特殊字符,mysql -uroot -p 会出问题,比如生成的密码 sX;qQZ.L;6Ml  那就用转义 sX\;qQZ.L\;6Ml 即可)
    shell>grep 'temporary password' /var/log/mysqld.log
    # 2017-05-23T04:53:37.967825Z 1 [Note] A temporary password is generated for root@localhost: wztxYpby+2Gr
    然后登录mysql进行修改: 注意 密码有策略 大小写数字和特殊字符 否则报错
    shell> mysql -uroot -pwztxYpby+2Gr(可能需要重启先,因为可能会报
    ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)  ) 
    mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'ShangLi@2017'; 
    增加远程登录用户
    mysql> -uroot -pscLRK@DBadmin2017
    mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'JXgx@2017' WITH GRANT OPTION;
                
    增加开发人员使用账号
    GRANT ALL PRIVILEGES ON *.* TO 'dev'@'%' IDENTIFIED BY 'ShangLi@2017' WITH GRANT OPTION;
                
    配置编码和优化配置  vim /etc/my.cnf 把下面的复制 覆盖 my.cnf
                
    [client]
                        
    port=1113
    default-character-set=utf8                          
    [mysqld]
    port=1113
    character_set_server=utf8
    init_connect='SET NAMES utf8'
    collation-server=utf8_general_ci
    datadir=/var/lib/mysql
    socket=/var/lib/mysql/mysql.sock
    symbolic-links=0
    log-error=/var/log/mysqld.log
    pid-file=/var/run/mysqld/mysqld.pid
                                    
    #优化参数
    #设置最大连接数 默认500
    max_connections=1024
    #临时表分配的内存 默认16M
    tmp_table_size=200M
    #定义了用户可以创建的内存表(memory table)的大小。这个值用来计算内存表的最大行数值。这个变量支持动态改变 ,默认16M
    max_heap_table_size=500M
    #一个事务,在没有提交的时候,产生的日志,记录到Cache中;等到事务提交需要提交的时候,则把日志持久化到磁盘。默认binlog_cache_size大小32K
    binlog_cache_size = 1M
    #事务隔离级别 默认 REPEATABLE-READ 总共4种 READ-UNCOMMITTED, READ-COMMITTED, REPEATABLE-READ, SERIALIZABLE
    transaction-isolation=REPEATABLE-READ
    #数据库字段名名是否区分大小写 0不区分 1 区分
    lower_case_table_names = 1
    #默认mysql对很多联合查询会报警,可以修改sql_mode                sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION' 
    group_concat_max_len=102400
    重启服务器
    用新端口链接 ssh  用新密码链接数据库
    select    version();
    show variables like '%character%';
    

    centos6.5 安装mysql 5.7
    ( 如果有就先卸载 yum remove mysql mysql-* 然后用 find / -name mysql 把所有带mysql字样的全部删除)

    下载mysql源安装包
    (centos 6.5 下载这个 注意  el X-y后面的数字 必须和操作系统版本一致!!!)
    shell> wget dev.mysql.com/get/mysql-community-release-el6-5.noarch.rpm
    安装mysql源
    (centos 6.5  )
    shell>  yum install mysql-community-release-el6-5.noarch.rpm
     验证源安装是否成功
    yum repolist enabled | grep "mysql.*-community.*"
    设置默认需要安装的mysql版本( centos6.5 默认安装5.6, 如果要安装5.7 这里要配置  )
    可以修改vim /etc/yum.repos.d/mysql-community.repo源,
    改变默认安装的mysql版本。比如要安装5.6版本,将5.7源的enabled=1改成enabled=0。
    然后再将5.6源的enabled=0改成enabled=1即可。
    安装mysql
    yum install mysql-community-server          
    启动Mysql 
    用 service mysqld status可以看到目前Msyql是停用状态)
    service mysqld start
    查看root 默认密码(初始化密码在mysql.log文件里,所以要快速找到密码 (有时候生成的密码是特殊字符,mysql -uroot -p 会出问题, 比如生成的密码 sX;qQZ.L;6Ml  那就用转义 mysql -uroot -psX\;qQZ.L\;6Ml 即可)
    grep "password" /var/log/mysqld.log
    比如密码为: AI1LV#vwWh8A
    修改密码
    mysql> -uroot -pAI1LV#vwWh8A
    mysql> SET PASSWORD = PASSWORD('woaibeijin@TIAN09');
    提交
    flush privileges;
    使root能在任何地方访问mysql数据库
    grant all privileges on *.* to root@"%" identified by "woaibeijin@TIAN09";
    剩余参考上面的5.7

    相关文章

      网友评论

          本文标题:centeros 7和centeros 6 安装mysql

          本文链接:https://www.haomeiwen.com/subject/zolhzftx.html