登录
首页 >  文章 >  linux

Debian 10.9.x编译安装MySQL8.0.x

时间:2025-01-17 18:04:15 222浏览 收藏

来到golang学习网的大家,相信都是编程学习爱好者,希望在这里学习文章相关编程知识。下面本篇文章就来带大家聊聊《Debian 10.9.x编译安装MySQL8.0.x》,介绍一下,希望对大家的知识积累有所帮助,助力实战开发!

在Debian 10.9.x系统上编译安装MySQL 8.0.x的详细步骤

Debian 10.9.x编译安装MySQL8.0.x

准备工作请参考:https://www.31idc.com/helpcontent/529.html

MySQL 8.0.x安装过程

  1. 安装rpcsvc-proto:

    cd /usr/local/src
    xz -d rpcsvc-proto-1.4.2.tar.xz
    tar xvf rpcsvc-proto-1.4.2.tar
    cd rpcsvc-proto-1.4.2
    ./configure
    make
    make install
  2. 安装cmake:

    cd /usr/local/src
    tar zxvf cmake-3.20.2.tar.gz
    cd cmake-3.20.2
    ./configure
    make
    make install
  3. 安装MySQL:

    3.1 准备工作:

    groupadd mysql
    useradd -g mysql mysql -s /bin/false
    mkdir -p /data/mysql
    chown -R mysql:mysql /data/mysql
    mkdir -p /usr/local/mysql
    cd /usr/local/src
    tar zxvf mysql-boost-8.0.25.tar.gz
    cd mysql-8.0.25

    3.2 编译安装MySQL (注意:此步骤需要较大的磁盘空间,建议根分区空间充足):

    cmake . \
        -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
        -DINSTALL_DATADIR=/data/mysql \
        -DMYSQL_USER=mysql \
        -DMYSQL_UNIX_ADDR=/tmp/mysqld.sock \
        -DDEFAULT_CHARSET=utf8 \
        -DDEFAULT_COLLATION=utf8_general_ci \
        -DWITH_INNOBASE_STORAGE_ENGINE=1 \
        -DWITH_EMBEDDED_SERVER=1 \
        -DFORCE_INSOURCE_BUILD=1 \
        -DWITH_MYISAM_STORAGE_ENGINE=1 \
        -DENABLED_LOCAL_INFILE=1 \
        -DEXTRA_CHARSETS=all \
        -DDOWNLOAD_BOOST=1 \
        -DWITH_BOOST=/usr/local/src/mysql-8.0.25/boost \
        -DCMAKE_C_COMPILER=/usr/bin/gcc \
        -DCMAKE_CXX_COMPILER=/usr/bin/g++
    
    make
    make install

    3.3 初始化MySQL数据库并设置配置文件:

    rm -rf /etc/my.cnf /etc/mysql/my.cnf  # 删除现有配置文件 (如有)
    cd /usr/local/mysql
    ./bin/mysqld --user=mysql --initialize --basedir=/usr/local/mysql --datadir=/data/mysql # 初始化数据库,记录生成的root密码
    mkdir -p /usr/local/mysql/etc/
    nano /usr/local/mysql/etc/my.cnf # 创建并编辑配置文件 (内容如下,根据实际情况调整)
    
    [mysqld]
    port=3306
    tmpdir=/tmp
    datadir=/data/mysql
    socket=/tmp/mysql.sock
    user=mysql
    symbolic-links=0
    key_buffer_size=16M
    max_allowed_packet=128M
    default_authentication_plugin=mysql_native_password
    open_files_limit=60000
    explicit_defaults_for_timestamp
    server-id=1
    character-set-server=utf8
    federated
    max_connections=1000
    max_connect_errors=100000
    interactive_timeout=86400
    wait_timeout=86400
    sync_binlog=0
    back_log=100
    default-storage-engine=InnoDB
    log_slave_updates=1
    key_buffer_size=16M
    
    [mysqldump]
    quick
    
    [mysqld_safe]
    log-error=/var/log/mysqld.log
    pid-file=/var/run/mysqld/mysqld.pid
    
    [mysqld-8.0]
    sql_mode=TRADITIONAL
    
    [mysqladmin]
    force
    
    [client]
    password="your_password" # 替换为你的密码
    port=3306
    socket=/tmp/mysql.sock
    

    3.4 配置系统服务:

    mkdir -p /etc/rc.d/
    ln -s /etc/init.d /etc/rc.d/
    ln -s /usr/local/mysql/etc/my.cnf /etc/my.cnf
    cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
    chmod 755 /etc/init.d/mysqld
    apt-get remove insserv
    update-rc.d mysqld defaults 99
    nano /etc/rc.d/init.d/mysqld # 修改basedir和datadir路径
    systemctl daemon-reload
    service mysqld start
    systemctl restart mysqld.service

    3.5 设置环境变量:

    nano /etc/profile # 添加 export PATH=$PATH:/usr/local/mysql/bin
    source /etc/profile
    ln -s /usr/local/mysql/lib/mysql /usr/lib/mysql
    ln -s /usr/local/mysql/include/mysql/* /usr/include/mysql/
    mkdir /var/lib/mysql
    ln -s /tmp/mysql.sock /var/lib/mysql/mysql.sock
  4. 修改root密码并创建用户和数据库:

    mysql -u root -p # 使用初始化生成的密码登录
    ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'your_strong_password'; # 修改root密码
    FLUSH PRIVILEGES;
    CREATE DATABASE IF NOT EXISTS `www.osyunwei.com` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
    CREATE USER 'osyunwei.com'@'localhost' IDENTIFIED WITH mysql_native_password BY 'osyunwei';
    GRANT ALL PRIVILEGES ON `www.osyunwei.com`.* TO 'osyunwei.com'@'localhost';
    GRANT SUPER ON *.* TO 'osyunwei.com'@'localhost';
    FLUSH PRIVILEGES;
    exit
    service mysqld restart

记住将 your_passwordyour_strong_password 替换成你自己的强密码。 安装过程中请仔细检查每个步骤,并根据你的系统实际情况进行调整。 安装完成后,记得备份你的MySQL数据。

到这里,我们也就讲完了《Debian 10.9.x编译安装MySQL8.0.x》的内容了。个人认为,基础知识的学习和巩固,是为了更好的将其运用到项目中,欢迎关注golang学习网公众号,带你了解更多关于的知识点!

相关阅读
更多>
最新阅读
更多>
课程推荐
更多>