1.安裝MySQL數據庫
01.創建mysql用戶的賬號
groupadd mysql
useradd -s /sbin/nologin -g mysql -M mysql
tail -l /etc/passwd
id mysql
獲取mysql軟件包:
首先下載好mysql軟件包,在通過“rz”命令來上傳到服務器
采用二進制安裝方法:
02.解壓並移動MySQL二進制軟件包到指定的安裝路徑
tar xf mysql-5.5.32-linux2.6-x86_64.tar.gz
mv mysql-5.5.32-linux2.6-x86_64 /application/mysql-5.5.32
02.創建軟鏈接,生成去掉版本號的訪問路徑並查看
ln -s /application/mysql-5.5.32/ /application/mysql
創建軟鏈接(*軟鏈接:若A是B的軟鏈接則,A中存儲的是指向B的地址,而
B中則是存放的文件)
03.初始化MySQL配置文件my.cnf
cd /application/mysql
ls -l support-files/*.cnf
[root@instance-yf0xzby9 mysql]# ls -l support-files/*.cnf
-rw-r--r-- 1 7161 wheel 4691 Jun 19 2013 support-files/my-huge.cnf
-rw-r--r-- 1 7161 wheel 19759 Jun 19 2013 support-files/my-innodb-heavy-4G.cnf
-rw-r--r-- 1 7161 wheel 4665 Jun 19 2013 support-files/my-large.cnf
-rw-r--r-- 1 7161 wheel 4676 Jun 19 2013 support-files/my-medium.cnf
-rw-r--r-- 1 7161 wheel 2840 Jun 19 2013 support-files/my-small.cnf
***
support-file下有my.conf的各種配置樣例
使用cp全路徑/bin/cp,可實現拷貝不出現替換提示,重名的文件會直接覆蓋
不同的配置文件模板對硬件的要求不同
由低到高
my-medium.cnf my-small.cnf my-large.cnf my-huge.cnf my-innodb-heavy-4G.cnf
***
04.初始化MySQL數據庫文件
[root@instance-yf0xzby9 mysql]# mkdir -p /application//mysql/data
[root@instance-yf0xzby9 mysql]# chown -R mysql.mysql /application/mysql
[root@instance-yf0xzby9 mysql]# /application/mysql/scripts/mysql_install_db --basedir=/application/mysql --datadir=/application/mysql/data/ --user=mysql
2.配置並啟動MySQL數據庫
01.設置MySQL的啟動腳本
cp support-files/mysql.server /etc/init.d/mysqld
# 拷貝MySQL啟動腳本到MySQL的命令路徑
chmod +x /etc/init.d/mysqld
# 使腳本可以執行
02.更換啟動路徑
sed -i 's#/usr/local/mysql#/application/mysql#g' /application/mysql/bin/mysqld_safe /etc/init.d/mysqld
03.啟動MySQL數據庫
/etc/init.d/mysql start
出現的錯誤:
Starting MySQL..The server quit without updating PID file ([FAILED]/mysql/instance-yf0xzby9.pid).
/var/run/mysqld/mysqld.pid
/var/log/mysqld.log
/var/lib/mysql
[ERROR] Fatal error: Can't open and lock privilege tables: Table 'mysql.host' doesn't exist
180928 09:50:45 mysqld_safe mysqld from pid file /var/lib/mysql/instance-yf0xzby9.pid ended
/application/mysql/bin/mysqld: Table 'mysql.plugin' doesn't exist
原因:系統中原本存在一個mysql數據庫
解決方法:
1.查看是否有其他mysql數據可已經安裝並使用了3306端口
ps aux|grep mysql*
rpm -qa|grep mysql
2.查看/etc/my.cnf
3.更改配置文件
[mysqld]
datadir=/application/mysql/data
4.重新啟動數據庫
/etc/init.d/mysql start
若還不行則查看日志文件
04.檢查MySQL數據庫是否啟動
netstat -lntup|grep mysql
若未啟動則看,在data下的日志,命令:tail -100 /application/mysql/data/instance-yf0xzby9.err
啟動成功:tail -10 /application/mysql/data/instance-yf0xzby9.err來查看日志
05.設置開機自啟動
chkconfig --add mysqld
chkconfig mysqld on
chkconfig --list mysqld
06.配置mysql全局命令使用路徑
echo 'export PATH=/application/mysql/bin:$PATH' >>/etc/profile
tail -l /etc/profile (查看)
source /etc/profile (將上一行添加到/etc/profile中的內容直接生效)
echo $PATH
[root@instance-yf0xzby9 mysql]# tail -l /etc/profile
fi
done
unset i
unset -f pathmunge
setterm -blank 0 &> /dev/null
setterm -powersave off &> /dev/null
setterm -powerdown 0 &> /dev/null
ulimit -SHn 65535
export PATH=/application/mysql/bin:$PATH
[root@instance-yf0xzby9 mysql]# source /etc/profile
[root@instance-yf0xzby9 mysql]# echo $PATH
/application/mysql/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
*如果不設置全局路徑,則無法直接敲mysql等命令管理數據庫
*只能采用帶着路徑的方式敲命令,另外一個方法則是將/application/mysql/bin下面的
*命令拷貝到已經是全局系統路徑的/usr/local/bin下。
3.MySQL安全配置
01.為MySQL的root用戶設置密碼
mysqladmin -u root password 'hty123'
mysql
mysql -uroot -p
02.清理無用的MySQL用戶及庫