1. 程式人生 > >Linux 7下mysql5.6安裝

Linux 7下mysql5.6安裝

一、安裝前準備工作

 1.下載MySQL安裝包,上傳到伺服器

 2. 檢查是否已經安裝過mysql:rpm -qa | grep mysql

    有的話就解除安裝掉以前安裝的mysql: rpm -e --nodeps xxx(xxx是搜尋結果)

 3. 安裝依賴包 yum install libaio libaio-devel -y

 4. 建立作業系統層的MySQL專用賬戶和使用者組,均命名為mysql

     groupadd mysql

     useradd -g mysql mysql

 5. 設定使用者作業系統資源的限制

    [[email protected] ~]#vi /etc/security/limits.conf
    mysql   soft  nproc   2047
    mysql   hard  nproc   16384
    mysql   soft  nofile  1024
    mysql   hard  nofile  65536

 6. 建立安裝路徑,資料檔案存放路徑  

    mkdir /mysql  

    mkdir  /data

    chown -R mysql:mysql /mysql

    chown -R mysql:mysql /data

 7. 禁用selinux     SELINUX=disabled

二、安裝MySQL

 1. 執行tar命令,解壓下載好的MySQL至/mysql    tar -xzvf mysql-5.6.28.tar.gz

 2. 配置引數檔案/etc/my.cnf

   [mysqld]
   sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES 
   port=3306
   basedir = /mysql
   datadir = /data/

   socket = /data/mysql.sock

   expire_logs_days=2

   max_binlog_size=10M

   server-id=1
   binlog-format=ROW
   log-slave-updates=true
   master-info-repository=TABLE
   relay-log-info-repository=TABLE
   sync-master-info=1
   slave-parallel-workers=2
   binlog-checksum=CRC32
   master-verify-checksum=1
   slave-sql-verify-checksum=1
   binlog-rows-query-log-events=1
   innodb_flush_log_at_trx_commit=1
   sync_binlog=1
   default-storage-engine = INNODB
   lower_case_table_names=1
   max_connections=2000

   log-bin-trust-function-creators=1

   [mysqld_safe]
   log-error=/data/log/mysqld.err
   pid-file=/data/log/mysqld.pid

   [client]
   user=root
   password="root"

   socket = /data/mysql.sock

 3. 初始化資料庫

    cd /mysql    

    scripts/mysql_install_db --user=mysql --basedir=/mysql --datadir=/data/mysqldata

 4. 啟動資料庫

    bin/mysqld_safe --user=mysql &

5. 配置PATH路徑  

    vi /etc/profile

    export PATH=$PATH:/mysql/bin

 6. 配置MySQL自啟

    cp support-files/mysql.server /etc/init.d/mysqld
    chkconfig --add mysqld
    chkconfig  mysqld on

    chkconfig --list mysqld

 7. 修改並刪除匿名使用者

     mysql> update mysql.user set password=password('root') where user='root';
     Query OK, 4 rows affected (0.00 sec)

     Rows matched: 4  Changed: 4  Warnings: 0

     mysql> delete from mysql.user where user='';
     Query OK, 2 rows affected (0.00 sec)

     mysql> flush privileges;
     Query OK, 0 rows affected (0.00 sec)