CentOS7安裝mysql5.6


在安裝MySQL時總會出現一些小問題,導致安裝進度過慢,在百度搜加上自己實際操作,總結的安裝方式,共同進步

一、安裝mysql

1、下載安裝包使用wget命令安裝

wget -c -t0 https://cdn.mysql.com//Downloads/MySQL-5.6/mysql-5.6.39-linux-glibc2.12-x86_64.tar.gz

2、卸載自帶的Mariadb

[root@localhost ~]# rpm -qa|grep mariadb  // 查詢出來已安裝的mariadb  
[root@localhost ~]# rpm -e --nodeps 文件名  // 卸載mariadb,文件名為上述命令查詢出來的文件

3、刪除etc目錄下的my.cnf

[root@localhost ~]# rm /etc/my.cnf 

4、執行以下命令來創建mysql用戶組

[root@localhost ~]# groupadd mysql

5、執行以下命令來創建一個用戶名為mysql的用戶並加入mysql用戶組

[root@localhost ~]# useradd -g mysql mysql 

6、將下載的壓縮包放到 /usr/local/ 目錄下(通過mv 要移動的文件  /usr/local/)

7、解壓安裝包

[root@localhost ~]# tar -xvf mysql-5.6.34-linux-glibc2.5-x86_64.tar

 注:如果壓縮包為:mysql-5.6.34-linux-glibc2.5-x86_64.tar.gz

解壓命令為: tar -zxvf mysql-5.6.34-linux-glibc2.5-x86_64.tar.gz 

8、將解壓好的文件夾重命名為mysql

[root@localhost local]# mv 解壓出來的文件夾名 mysql

9、在 etc 下新建配置文件my.cnf,並在該文件中添加代碼:

將  /usr/local/mysql/support-files  路徑下的  my-default.cnf  文件拷貝到  /etc/my.cnf  命名為my.cnf代碼為

[root@localhost support-files]# cp my-default.cnf /etc/my.cnf 

配置/etc目錄下的my.cnf文件

[root@localhost support-files]# vim /etc/my.cnf

通過vim編輯器編輯my.cnf代碼如下:在網上能找到相應的配置

[mysql]  
# 設置mysql客戶端默認字符集  
default-character-set=utf8   
socket=/var/lib/mysql/mysql.sock
[mysqld]  
skip-name-resolve  
#設置3306端口  
port = 3306   
socket=/var/lib/mysql/mysql.sock  
# 設置mysql的安裝目錄  
basedir=/usr/local/mysql  
# 設置mysql數據庫的數據的存放目錄  
datadir=/usr/local/mysql/data  
# 允許最大連接數  
max_connections=200  
# 服務端使用的字符集默認為8比特編碼的latin1字符集  
18.	character-set-server=utf8  
# 創建新表時將使用的默認存儲引擎  
default-storage-engine=INNODB  
lower_case_table_name=1  
max_allowed_packet=16M

10、進入安裝mysql軟件目錄

[root@localhost ~]# cd /usr/local/mysql  
[root@localhost mysql]# chown -R mysql:mysql ./       修改當前目錄擁有着為mysql用戶  
[root@localhost mysql]# ./scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data/ 安裝數據庫

  注:若執行以上最后一個命令出現以下問題:

FATAL ERROR: please install the following Perl modules before executing   ./scripts/mysql_install_db:Data::Dumper

  解決方法 :安裝autoconf庫

命令: yum -y install autoconf   //此包安裝時會安裝Data:Dumper模塊  
安裝完成重新執行上面的安裝數據庫

  注:若是安裝數據庫出現以下錯誤

2018-03-19 14:00:43 40502 [ERROR] /usr/local/mysql//bin/mysqld: unknown variable 'l_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES'
2018-03-19 14:00:43 40502 [ERROR] Aborting

  解決辦法:將/etc/my.cnf文件中下面這句話注釋掉

[root@localhost mysql]# vim /etc/my.cnf
l_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES  //注釋掉使用#號

  重新執行安裝數據庫

  修改當前data目錄的擁有者為mysql用戶

[root@localhost mysql]# chown -R mysql:mysql data

二、配置MySQL

 1、授予my.cnf最大權限

[root@localhost ~]# chown 777 /etc/my.cnf

設置開機自啟動服務控制腳本:

2、復制啟動腳本到資源目錄

[root@localhost mysql]# cp ./support-files/mysql.server /etc/rc.d/init.d/mysqld 

3、增加mysqld服務控制腳本執行權限

[root@localhost mysql]# chmod +x /etc/rc.d/init.d/mysqld 

4、將mysqld服務加入到系統服務

[root@localhost mysql]# chkconfig --add mysqld

5、檢查mysqld服務是否已經生效

[root@localhost mysql]# chkconfig --list mysqld 
注意:該輸出結果只顯示 SysV 服務,並不包含原生 systemd 服務。SysV 配置數據可能被原生 systemd 配置覆蓋。
      如果您想列出 systemd 服務,請執行 'systemctl list-unit-files'。
      欲查看對特定 target 啟用的服務請執行
      'systemctl list-dependencies [target]'。

mysqld          0:關    1:關    2:開    3:開    4:開    5:開    6:關

  service命令控制mysql的啟動和停止

命令為:service mysqld start和service mysqld stop 

6、啟動mysqld

 [root@localhost mysql]# service mysqld start

  注:啟動后出現異常

 

   解決辦法

創建文件夾
[root@localhost lib]# mkdir /var/lib/mysql
給文件夾賦權限
chmod 777  /var/lib/mysql

7、將mysqlbin目錄加入PATH環境變量,編輯 ~/.bash_profile文件

[root@localhost mysql]# vim ~/.bash_profile  

  在文件最后添加如下信息:指定環境變量啟動程序位置

export PATH=$PATH:/usr/local/mysql/bin 

  執行下面的命令是修改的內容立即生效:

[root@localhost mysql]# source ~/.bash_profile

8、以root賬戶登錄mysql,默認是沒有密碼的,要輸入密碼的時候直接回車即可。

[root@localhost mysql]# mysql -u root -p

9、設置root賬戶密碼為root(也可以修改成你要的密碼)

mysql>use mysql  
mysql>update user set password=password('root') where user='root' and host='localhost';  
mysql>flush privileges;  

10、設置遠程主機登錄,使用下面命令查看和添加,注意下面的your username your password改成你需要設置的用戶和密碼

查看用戶
select Host,User,Password from mysql.user;
創建用戶
create user test identified by '123456';
分配權限
grant all privileges on *.* to 'test'@'%'identified by '123456' with grant option;
刷新
flush privileges ;
修改指定用戶密碼
update mysql.user set password=password('新密碼') where User="test" and Host="localhost";
刪除用戶
delete from user where User='test' and Host='localhost';

 如果不能訪問:CentOS7防火牆設置

查看已開放的端口(默認不開放任何端口)
firewall-cmd --list-ports
查詢端口號8020 是否開啟!
查詢端口號:firewall-cmd --query-port=8020/tcp 
開啟80端口
firewall-cmd --zone=public(作用域) --add-port=80/tcp(端口和訪問類型) --permanent(永久生效)
重啟防火牆
firewall-cmd --reload
停止防火牆
systemctl stop firewalld.service
禁止防火牆開機啟動
systemctl disable firewalld.service
刪除
firewall-cmd --zone= public --remove-port=80/tcp --permanent

其他版本:參考 http://blog.csdn.net/wailaizhu/article/details/53488954

修改vim /etc/sysconfig/iptables
添加端口號
-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT 或添加端口放行
1.開放80228080 端口 /sbin/iptables -I INPUT -p tcp --dport 80-j ACCEPT /sbin/iptables -I INPUT -p tcp --dport 22-j ACCEPT /sbin/iptables -I INPUT -p tcp --dport 8080-j ACCEPT 2.保存 /etc/rc.d/init.d/iptables save 3.查看打開的端口 /etc/init.d/iptables status 4.關閉防火牆 1) 永久性生效,重啟后不會復原 開啟: chkconfig iptables on 關閉: chkconfig iptables off 2) 即時生效,重啟后復原 開啟: service iptables start 關閉: service iptables stop

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM