CentOS如何安裝MySQL8.0、建立用戶並受權的詳細步驟

# 安裝相關軟件
    yum install -y gcc gcc-c++ openssl openssl-devel ncurses ncurses-devel make cmake
    # 獲取MySQL源碼,MySQL版本下載連接:https://dev.mysql.com/downloads/mysql/
    wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.13.tar.gz
    tar zxvf mysql-8.0.13.tar.gz
    cd mysql-8.0.13    
    # 添加操做系統的MySQL用戶
    groupadd -r mysql
    mkdir -p /data/mysql/data
    chown -R mysql.mysql /data/mysql/data/
    # 添加配置文件目錄
    mkdir -p /etc/mysql
    chown -R mysql.mysql /etc/mysql
    # 編譯MySQL
    mkdir -p /data/mysql
    chown -R mysql.mysql /data/mysql
    # -DCMAKE_INSTALL_PREFIX:指定安裝目錄
    # -DMYSQL_DATADIR:數據文件存放位置
    # -DSYSCONFDIR:配置文件目錄
    # -DDOWNLOAD_BOOST:實時下載boost
    # -DWITH_BOOST:下載boost保存目錄
    cmake . -DCMAKE_INSTALL_PREFIX=/data/mysql -DMYSQL_DATADIR=/data/mysql/data -DSYSCONFDIR=/etc/mysql -DDOWNLOAD_BOOST=1 -DWITH_BOOST=/data/mysql/boost
    make
    make install
    # 對安裝錄更改用戶權限
    chown root.mysql -R /data/mysql/
    # 安裝完成後,進入安裝目錄中,對mysql進行初始化操做
    cd /data/mysql
    bin/mysqld --initialize 
    # 拷貝服務腳本,賦權限並添加到啓動列表中
    cp support-files/mysql.server /etc/rc.d/init.d/mysqld
    chmod +x /etc/rc.d/init.d/mysqld
    chkconfig --add mysqld
    # 修改配置文件
    vi /etc/mysql/my.cnf
    輸入:
        [mysqld]
        basedir = /data/mysql
        datadir = /data/mysql/data
        port = 3306
        server_id = 1
        socket = /tmp/mysql.sock
        user = mysql

        [client]
        port = 3306
        socket = /tmp/mysql.sock
    # 啓動服務
    bin/mysqld &

    至此MySQL已經安裝完成了,接下來是一些優化的操做

    # 配置環境變量
    echo "export PATH=/data/mysql/bin:$PATH" >/etc/profile.d/mysql.sh
    source /etc/profile.d/mysql.sh

    # 刪除系統安裝完成後產生的匿名用戶並給root設置密碼
    # 若登陸mysql時,忘記了用戶密碼能夠在啓動mysqld服務時加--skip-grant-tables便可直接登陸: mysqld --skip-grant-tables &
    # 登陸mysql
    mysql -uroot -hlocalhost -p
    # 刪除全部匿名用戶,如下是刪除的命令
    drop user 'username'@'localhost';

    # 給用戶設定密碼的兩種方式
    1.  UPDATE user SET password = PASSWORD('your_password') WHERE user = 'username';
        FLUSH PRIVILEGES;
    2.  SET PASSWORD FOR root@localhost = PASSWORD('your_password');

    # 建立用戶並受權用戶
    create user 'username'@'localhost' identified by 'your_password';
    create database database_name default character set = 'utf8' default collate = 'utf8_general_ci';
    grant all privileges on database_name.* to 'username'@'localhost';
    flush privileges;
相關文章
相關標籤/搜索