在安裝MySQL時總會出現一些小問題,導致安裝進度過慢,在百度搜加上自己實際操作,總結的安裝方式,共同進步 一、安裝mysql 1、下載安裝包使用wget命令安裝 2、卸載自帶的Mariadb 3、刪除etc目錄下的my.cnf 4、執行以下命令來創建mysql用戶組 5、執行以下命令來創建一個用戶 ...
在安裝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、將mysql的bin目錄加入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.開放80,22,8080 埠
/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