cd soft
tar -zxvf mysql-5.7.25-linux-glibc2.12-x86_64.tar.gzmysql
mkdir /home/XXX/usr/local
mkdir /home/XXX/usr/local/data
mkdir /home/XXX/usr/local/log
mv mysql-5.7.25-linux-glibc2.12-x86_64 /home/XXX/usr/local/mysqllinux
(若是root用戶安裝的mysql佔用了3306,那麼普通用戶須要修改端口號;這裏端口號「port=3336」。)sql
cd /home/XXX/usr/local/mysql/數據庫
vi my.cnf
+++++++++++++my.cnf++++++++++++++++++++++++
[client]
port=3336
socket=/home/XXX/usr/local/mysql/mysql.sock
[mysqld]
port=3336
#設置mysql的安裝目錄
basedir=/home/XXX/usr/local/mysql
# 設置mysql數據庫的數據的存放目錄
datadir=/home/XXX/usr/local/data
pid-file=/home/XXX/usr/local/mysql/mysql.pid
socket=/home/XXX/usr/local/mysql/mysql.sock
log_error=/home/XXX/usr/local/log/error.log
collation_server=utf8_general_ci
# 服務端使用的字符集默認爲8比特編碼的latin1字符集
character_set_server=utf8
log-bin=/home/XXX/usr/local/log/mysql-bin
server-id=100
++++++++++++++++my.cnf++++++++++++++++++++socket
cd /home/XXX/usr/local/mysql
./bin/mysqld --defaults-file=/home/XXX/usr/local/mysql/my.cnf --initialize --user=XXX --basedir=/home/XXX/usr/local/mysql --datadir=/home/XXX/usr/local/data
tcp
cat /home/XXX/usr/local/log/error.log |grep root@localhostide
cd /home/XXX/usr/local/mysql/bin/
./mysqld_safe --defaults-file=/home/XXX/usr/local/mysql/my.cnf --user=XXX &
測試
cd /home/XXX/usr/local/mysql/bin/
$ ./mysql -uroot -P3336 -p -S /home/XXX/usr/local/mysql/mysql.sock
編碼
alter user 'root'@'localhost' identified by 'mysql@123';
grant all privileges on *.* to 'root'@'%' identified by 'mysql@123' with grant option; #或指定網段登陸
use mysql;
select host,user from user;
+-----------+---------------+
| host | user |
+-----------+---------------+
| % | root |
+-----------+---------------+
FLUSH PRIVILEGES;
rest
netstat -ntpl |grep 3336
mysql -u root -h XXX.XXX.XXX.XXX(主機IP) -P 3336 -p
+++++++++++++++++++++++++++++++++++++++++++++
報錯:ERROR 2003 (HY000): Can't connect to MySQL server
緣由:沒有開通防火牆或者關閉防火牆.
vi /etc/sysconfig/iptables
添加一條:
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3336 -j ACCEPT
重啓防火牆
service iptables restart
####################
5.7mysql
修改密碼:
vi /etc/my.cof
[mysqld]
skip-grant-tables
進入數據庫
mysql> update user set authentication_string=password('Huaaa12#$') where user='root';
mysql>flush privileges;