linux上安装不同版本的MySQL(CentOS7.6)

linux上安装不同版本的MySQL(以已安装了MySQL8为例,以下为安装MySQL5的具体教程)

  • 官网下载二进制包

  • 解压

  • 修改配置文件my.cnf

    [client]
    port=3307
    socket=/tmp/mysql3307.sock
    #### mysql8
    mysqlx_port=33070
    mysqlx_socket=/tmp/mysqlx33070.sock
    ####
    
    [mysqld]
    prot=3307
    socket=/tmp/mysql3307.sock
    #### mysql8
    mysqlx_port=33070
    mysqlx_socket=/tmp/mysqlx33070.sock
    ####
    datadir=/usr/local/mysql5/data
    basedir=/usr/local/mysql5
    slow-query-log-file=/usr/local/mysql5/data/slowquery.log
    innodb_data_home_dir=/usr/local/mysql8/data
    
  • 修改启动文件/usr/local/mysql5/support-files/mysql.server(下面为启动文件中需要修改的部分)

    basedir=/usr/local/mysql5
    datadir=/usr/local/mysql5/data
    --------------------------------------------
    lock_file_path="$lockdir/mysql5"
    --------------------------------------------
    mysqld_pid_file_path="/usr/local/mysql5/data/mysqld.pid"
    if test -z "$basedir"
    then
      basedir=/usr/local/mysql5
      bindir=/usr/local/mysql5/bin
      if test -z "$datadir"
      then
        datadir=/usr/local/mysql5/data
      fi
      sbindir=/usr/local/mysql5/bin
      libexecdir=/usr/local/mysql5/bin
    --------------------------------------------
    conf=/usr/local/mysql5/my.cnf
    
  • 初始化数据库

    /usr/local/mysql5/bin/mysqld --defaults-file=/usr/local/mysql5/my.cnf --user=mysql --initialize

    注意记录初始密码

  • 注册服务

    • sysvinit

      cp /usr/local/mysql5/suppor-files/mysql.server /etc/init.d/mysql5

    • systemd

      vim /usr/lib/systemd/system/mysqld5.service
      
      
      [Unit]
      Description=MySQL5 server
      After=syslog.target network.target
      
      [Service]
      User=mysql5
      Group=mysql
      Type=forking
      TimeoutSec=0
      #PermissionsStartOnly=true
      ExecStart=/usr/local/mysql5/bin/mysqld --defaults-file=/usr/local/mysql5/conf/my.cnf --daemonize
      LimitNOFILE = 65535
      Restart=on-failure
      RestartSec=3
      RestartPreventExitStatus=1
      PrivateTmp=false
      
      [Install]
      WantedBy=multi-user.target
      
  • 设置开机自启动

    • sysvinit

      chkconfig --add mysql5

    • systemd

      systemctl enable mysql5

  • 启动服务

    • sysvinit

      service mysql5 start

    • systemd

      systemctl start mysql5

  • 连接数据库

    mysql --socket=/tmp/mysql3307.sock -uroot -p
    # 或者
    mysql -h:: -P3307 -uroot -p # 不知道为什么在linux中必须要指定host后,指定的端口才会生效
    
  • 修改密码

    alter user root@localhost identified by 'pwd';
    
  • 允许远程登录

    use mysql;
    select user, host, plugin from user;
    update user set host='%' where user='root'; # %为通配符,可指定具体的ip
    
  • 开放防火墙中对应的端口

    firewall-cmd --add-port=3307/tcp --zone=public --permanent
    firewall-cmd --reload
    firewall-cmd --list-port
    
参考资源链接:[深入研究K均值算法初始聚类中心选取](https://wenku.youkuaiyun.com/doc/2beijvyova?utm_source=wenku_answer2doc_content) 在K均值聚类算法中,初始聚类中心选择至关重要,它直接影响算法的收敛速度和最终的聚类质量。传统的随机选择方法虽然简单,但容易导致算法收敛到局部最优解。K-means++算法是一种更为高级的初始聚类中心选择方法,它通过更加智能的方式选择初始中心,以期得到更好的聚类效果。 为了实现这一点,K-means++算法采取了一种加权概率策略,具体步骤如下: 1. 首先从数据集中随机选择一个点作为第一个初始聚类中心。 2. 对于数据集中的每一个点x,计算它与最近的已选择聚类中心的距离d(x)。距离d(x)越小,表示点x越接近已选择聚类中心,因此被选为下一个聚类中心的概率越低。 3. 以概率 d(x)^2 / Σ(d(x)^2) 选择下一个聚类中心,其中求和是对数据集中所有点进行的。 4. 重复步骤2和3,直到选择了K个初始聚类中心。 通过这种方式,K-means++算法有效地避免了所有初始聚类中心都落在数据集的某个小区域内的风险,从而提高了算法的全局优化性能。 为了更深入理解K-means++算法的原理和实现过程,建议阅读《深入研究K均值算法初始聚类中心选取》一文。该文献详细探讨了K-means++算法的细节和优势,并通过实例演示了如何在实际中应用该方法以优化聚类效果。通过学习这篇文献,你可以掌握K均值算法的高级技巧,并提升在数据挖掘、模式识别和统计分析等领域的应用能力。 参考资源链接:[深入研究K均值算法初始聚类中心选取](https://wenku.youkuaiyun.com/doc/2beijvyova?utm_source=wenku_answer2doc_content)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值