# 依賴包
yum -y install gcc gcc-c++ ncurses-devel cmake bison
# 創建用戶組
groupadd mysql
useradd -r -g mysql -s /bin/false mysql
# 目錄規劃
mkdir -p /usr/local/mysql
mkdir -p /data/mysql
tar zxvf mysql-5.5.48-linux2.6-x86_64.tar.gz
cp -r mysql-5.5.48-linux2.6-x86_64 /usr/local/mysql
cd /usr/local/mysql
chown -R mysql:mysql ./
./scripts/mysql_install_db --user=mysql --datadir=/data/mysql
chown -R root:root ./
chown -R mysql:mysql /data/mysql
cp support-files/mysql.server /etc/init.d/mysqld
chmod 755 /etc/init.d/mysqld
chkconfig --add mysqld
chkconfig mysqld on
service mysqld start
./bin/mysqladmin -u root -h localhost password 'newpass'
ln -s /usr/local/mysql/bin/mysql /usr/local/bin/mysql
報錯:Can't connect to local MySQL server through socket '/tmp/mysql.sock'
原因:/etc/my.cnf 指定 socket=/var/lib/mysql/mysql.sock,客戶端默認找 /tmp/mysql.sock。
修復:
ln -s /var/lib/mysql/mysql.sock /tmp/mysql.sock
# 或修改 my.cnf [client] socket=/var/lib/mysql/mysql.sock
現象:本地連通,Navicat 等工具遠程報錯。
排查:
user.Host 是否為 %GRANT ALL ON *.* TO 'root'@'%' IDENTIFIED BY 'pass'; FLUSH PRIVILEGES;iptables -A INPUT -p tcp --dport 3306 -j ACCEPTmy.cnf 設置 bind-address=0.0.0.0MySQL 5.7+ 初始化生成隨機密碼,需查看 .mysql_secret 或日誌,首次登錄後強制修改。
ps -ef | grep mysql
mysql -u root -p -e "SHOW VARIABLES LIKE 'datadir';"