聲明:
如果您有更好的技術與作者分享,或者商業合作;請訪問作者個人網站 http://www.esqabc.com/view/message.html 留言給作者。
如果該案例觸犯您的專利,請在這裏:http://www.esqabc.com/view/message.html 留言給作者說明原由,作者一經查實,馬上刪除。
1,安裝準備:
Linux添加防火牆、iptables的安裝和配置
請訪問地址:https://www.cnblogs.com/lemon-flm/p/7608029.html
(1)下載安裝包:
5.7.26
[root@esqabc tools]# wget https://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz
5.6.44
[root@esqabc tools]# wget https://cdn.mysql.com//Downloads/MySQL-5.6/mysql-5.6.44-linux-glibc2.12-x86_64.tar.gz
(2)把數據庫文件拷貝到任意目錄
[root@esqabc ~]# cd /home/tools/
[root@esqabc tools]# cp mysql-5.6.44-linux-glibc2.12-x86_64.tar.gz /usr/local/
(3)編輯配置文件:my.cnf
[root@esqabc ~]# vim /etc/my.cnf
把以下的內容拷貝進去:
#數據庫安裝文件目錄
basedir = /usr/local/mysql
#數據庫數據目錄
datadir = /usr/data/mysql
socket = /tmp/mysql.sock
#數據庫日誌目錄
log-error = /usr/data/mysql/error.log
pid-file = /usr/data/mysql/mysql.pid
user = mysql
tmpdir =/tmp
lower_case_table_names=1
(4)創建數據庫日誌
進入目錄(/var/log/):
[root@esqabc ~]# cd /var/log/
創建文件夾:mariadb
[root@esqabc log]# mkdir mariadb
進入目錄:/var/log/mariadb/
[root@esqabc ~]# cd /var/log/mariadb
創建文件:mariadb.log
[root@esqabc mariadb]# touch mariadb.log
(5)創建數據庫存放目錄
創建文件夾用來存放數據庫data
[root@esqabc ~]# cd /usr
[root@esqabc ~]# mkdir data
[root@esqabc ~]# cd /usr/data/
[root@esqabc data]# mkdir mysql
2,安裝
(1)進入到數據庫文件目錄:cd /usr/local
[root@esqabc ~]# cd /usr/local
(2) 執行解壓安裝包:
[root@esqabc local]# tar -zxvf mysql-5.6.44-linux-glibc2.12-x86_64.tar.gz
重命名
[root@esqabc local]# mv /usr/local/mysql-5.6.44-linux-glibc2.12-x86_64 /usr/local/mysql
(3)添加系統mysql組和mysql用戶:
[root@esqabc ~]# groupadd mysql
[root@esqabc ~]# useradd -r -g mysql mysql
(4)進入安裝mysql軟件目錄:
[root@esqabc ~]# cd /usr/local/mysql
(5)修改當前目錄擁有者爲mysql用戶,
[root@esqabc mysql]# chown -R mysql:mysql ./
(6)安裝數據庫:
安裝方式一:
[root@esqabc mysql]# ./scripts/mysql_install_db --user=mysql
安裝方式二(推選):
[root@esqabc mysql]# ./scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/data/mysql --pid-file=/usr/data/mysql/mysql.pid --tmpdir=/tmp
如果安裝過程中出現最後面的錯誤:(請滾到最後面查看)
(8)修改當前目錄擁有者爲root用戶
[root@esqabc mysql]# chown -R root:root ./
(9)修改當前data目錄擁有者爲mysql用戶
[root@esqabc mysql] # chown -R mysql:mysql /usr/data
(10)啓動mysql服務和添加開機啓動mysql服務,添加開機啓動
[root@esqabc ] # cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
賦予可執行權限
[root@esqabc ] # chmod +x /etc/init.d/mysql
添加服務
[root@esqabc ] # chkconfig --add mysql
顯示服務列表
[root@esqabc ] # chkconfig --list
(11)啓動mysql服務:執行命令:service mysql start
[root@esqabc ] # service mysql start
如果出現下面的問題請滾到最後面查看
3,其它命令:
(1)#啓動數據庫命令:
[root@esqabc ~]# mysql service mysqld start
[root@esqabc ~]# service mysql start
(2)#關閉數據庫命令:
[root@esqabc ~]# mysql service mysqld stop
[root@esqabc ~]# service mysql stop
(3)#查看數據庫運行狀態命令:
[root@esqabc ~]#service mysqld status
(4)給root賬戶開啓遠程登陸命令:
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION;
4,登錄數據庫:
1,查看數據庫進程:
[root@esqabc ~]# ps -aux | grep mysql
2,輸入登錄命令:
[root@esqabc ~]# mysql -uroot -p
如果出現:-bash: mysql: command not found 請在最底下查找答案
3,修改root密碼:
myslq > GRANT ALL PRIVILEGES ON *.* TO root@"%" IDENTIFIED BY "1qaz2wsx!@";
mysql > flush privileges;
4,開啓遠程訪問:
mysql > grant all privileges on *.* to 'root'@'%'identified by '1qaz2wsx!@' with grant option;
mysql > flush privileges;
5,安裝問題總結
出現: -bash: ./scripts/mysql_install_db: /usr/bin/perl: bad interpreter: 沒有那個文件或目錄
解決執行命令:
[root@esqabc ~]# yum -y install perl perl-devel
========================
出現: Installing MySQL system tables…./bin/mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory
解決,執行命令:
[root@esqabc ~]# yum -y install libaio-devel
(由於默認是32位,所以要安裝64的的,執行下面的命令)
[root@esqabc ~]# yum -y install numactl.x86_64
=========================
出現:FATAL ERROR: please install the following Perl modules before executing ./scripts/mysql_install_db:
Data::Dumper
解決:執行命令:
[root@esqabc ~]# yum -y install autoconf
=======================
出現:FATAL ERROR: The parent directory for the data directory ‘/data/mysql’ does not exist.
If that path was really intended, please create that directory path and then
解決:請在跟目錄新建文件夾:/data/mysql 執行命令:
[root@esqabc ~]# mkdir -p /data/mysql
====================
出現:Starting MySQL./usr/local/mysql/bin/mysqld_safe: line 183: 14957 Killed nohup /usr/local/mysql/bin/mysqld --basedir=/usr/local/mysql – data dir=/data/mysql --plugin- dir=/usr/local/mysql/lib/plugin --user=mysql --log-error=/var/log/mariadb/mariadb.log --pid-file=/data/mysql/mysql.pid – socket=/tmp/mysql.sock < /dev/null > /dev/null 2>&1
ERROR! The server quit without updating PID file (/data/mysql/mysql.pid).
解決:請在目錄/usr/data/mysql 添加文件:mysql.pid 文件內容爲空白
[root@esqabc ~]# cd /usr/data/mysql
[root@esqabc mysql]# touch mysql.pid
========================
出現:/usr/local/mysql/bin/mysqld_safe: line 183: 16497 Killed nohup /usr/local/mysql/bin/mysqld --basedir=/usr/local/mysql --datadir=/data/mysql – plugin-dir=/usr/local/mysql/lib/plugin --user=mysql --log-error=/var/log/mariadb/mariadb.log --pid-file=/data/mysql/mysql.pid --socket=/tmp/mysql.sock < /dev/null > /dev/null 2>&1
解決:請在mysql配置文件(vim /etc/my.cnf)
加入配置:
key_buffer=16K
table_open_cache=4
query_cache_limit=256K
query_cache_size=4M
max_allowed_packet=1M
sort_buffer_size=64K
read_buffer_size=256K
thread_stack=64K
innodb_buffer_pool_size = 56M
==============================
出現:執行命令(mysql -uroot -p) -bash: mysql: command not found
解決:執行命令:
[root@esqabc ~]# ln -s /usr/local/mysql/bin/mysql /usr/bin
手機留言請訪問:http://www.esqabc.com