Centos7下Mysql 5.6.40 tar包安裝
環境:
centos 7 x64
MySQL版本5.6.40
1、下載mysql安裝包
mysql-5.6.40-linux-glibc2.12-x86_64.tar.gz
官網下載地址:?http://dev.mysql.com/downloads/mysql/
2、解壓tar包
解壓到mysql目錄下。
1[root@centos-linux mysql]# cd /usr/local/mysql
2[root@centos-linux ~]# tar -xzvf?mysql-5.6.40-linux-glibc2.12-x86_64.tar.gz
3、添加用戶與組
在mysql同級目錄執行。
1[root@centos-linux mysql]# groupadd mysql
2[root@centos-linux mysql]# useradd -r -g mysql mysql
3[root@centos-linux mysql]# chown -R mysql:mysql mysql
4、安裝
1[root@centos-linux mysql]# su mysql
2bash-4.2$ cd?mysql/scripts
3bash-4.2$ ./mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
4bash-4.2$ exit
5、配置文件
1[root@centos-linux mysql]# cd?/usr/local/mysql/support-files
2[root@centos-linux support-files]# cp my-default.cnf /etc/my.cnf
3[root@centos-linux support-files]# cp mysql.server /etc/init.d/mysql
4vim?/etc/init.d/mysql?????? #若mysql的安裝目錄是/usr/local/mysql,則可省略此步
修改文件中的兩個值
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
6、配置環境變量
1[root@centos-linux mysql]# vim /etc/profile
2[root@centos-linux mysql]# export MYSQL_HOME="/usr/local/mysql"
3[root@centos-linux mysql]# export PATH="$PATH:$MYSQL_HOME/bin"
4#保存退出
5. /etc/profile
7、添加自啟動服務
1[root@centos-linux mysql]# chkconfig --add mysql
2[root@centos-linux mysql]# chkconfig mysql on
8、啟動mysql
1[root@centos-linux mysql]# service mysql start
9、修改root密碼
1mysqladmin -u root password'your_password'#修改root用戶密碼
10、配置遠程訪問
1.????修改數據庫
1[root@centos-linux mysql]# mysql -u root?-p ? ??#登錄mysql,需要輸入密碼
2mysql>GRANT ALL PRIVILEGES ON *.* TO'root'@'%'IDENTIFIED BY'your_password'WITH GRANT OPTION;#允許root用戶遠程訪問
3mysql>FLUSH PRIVILEGES;#刷新權限
4mysql>exit
2.???開放3306端口:
1[root@centos-linux mysql]# /sbin/iptables -I INPUT -p tcp --dport 3306 -j ACCEPT #開啟3306端口
2[root@centos-linux mysql]# service iptables save ??#保存防火墻規則
3?? [root@centos-linux mysql]# service iptables restart ?#重置防火墻規則
11、相關問題
1.修改root密碼時報錯
描述
mysqladmin:command not found解決方法
解決:
通過如下命令建立鏈接解決
1?? [root@centos-linux mysql]# ln-s /mysql安裝路徑/bin/mysqladmin /usr/bin
2.登錄報錯:Access denied
描述:
提示一個授權失敗的錯誤:Access denied for user ‘root’@’localhost’ (using passwor)
解決:
配置文件方式解決:
通過修改配置文件解決
1[root@centos-linux mysql]# cd support-files
2[root@centos-linux support-files]# vim my-default.cnf
找到[mysqld]?這一項,然后在該配置項下添加skip-grant-tables?這個配置,然后保存文件。
重啟服務。
1#通過下面命令免密碼登錄
2[root@centos-linux mysql]# mysql -u root -p
3#通過下面命令修改密碼
4mysql>set passwordfor'username'@'host'=password('newpassword')
命令方式解決
1[root@centos-linux support-files]# sudo ./mysql.server stop
2Shutting down MySQL
3[root@centos-linux support-files]# sudo /usr/local/mysql/bin/mysqld_safe --skip-grant-tables
4...
5usr/local/mysql/data
6mysql -u root
7UPDATE mysql.user SETauthentication_string=PASSWORD('yourpassword')WHEREUser='root';
8FLUSH PRIVILEGES;
9\q
進入mysql的安全模式后,鍵入圖中圈起來的四行配置(必須逐行輸入),輸入完成后使用contrl+z?鍵結束輸入
然后再終端中使用mysql -u root -p?同樣可以實現密碼登錄,另外此時密碼也已經修改為了pass?,下次的登錄即可使用pass這個新密碼了。與上面的操作達成的效果是相同的。
3.??文件權限問題
mariadb.log
描述:
mysqld_safe error: log-error set to '/var/log/mariadb/mariadb.log', however file don't exists. Create writable for user 'mysql'.
解決 :
mkdir /var/log/mariadb?
touch /var/log/mariadb/mariadb.log?
chown -R mysql:mysql /var/log/mariadb/
[ERROR] SSL error: Unable to get private key from 'server-key.pem'?
find / -name server-key.pem?
chown -R mysql:mysql /var/lib/mysql/?
權限不夠,需要給出相應的權限
mariadb.pid?
描述:
/usr/local/mysql/bin/mysqld: Can't create/write to file '/var/run/mariadb/mariadb.pid' (Errcode: 2 - No such file or directory)
解決:
mkdir /var/run/mariadb/?
chown -R mysql:mysql /var/run/mariadb/?