二进制模式安装mysql
Mysql5.7初始化前要评估是否独立的undo文件
tar -xvf mysql-5.7.34-linux-glibc2.12-x86_64.tar
mkdir -p /usr/local/mysql
mkdir -p /usr/local/mysql/data
groupadd mysql
useradd -r -g mysql mysql
chown -R mysql:mysql /usr/local/mysql
yum remove mariadb-libs-5.5.56-2.el7.x86_64
tar -zxvf mysql-5.7.34-linux-glibc2.12-x86_64.tar.gz -C /usr/local/mysql/
cd /usr/local/mysql/mysql-5.7.34-linux-glibc2.12-x86_64/
mv * ../
chown -R mysql:mysql /usr/local/mysql
[root@localhost support-files]# cp mysql.server /etc/init.d/mysqld
[root@localhost support-files]# pwd
/usr/local/mysql/support-files
chkconfig --add mysqld
chkconfig mysqld on
新建/etc/my.cnf,内容如下:
[mysqld]
port = 3306
socket = /usr/local/mysql/mysql.sock
user = mysql
basedir = /usr/local/mysql
datadir = /usr/local/mysql/data
pid-file = /usr/local/mysql/data/mysql.pid
#sql_mode='ONLY_FULL_GROUP_BY'
log_error = /usr/local/mysql/mysql-error.log
!includedir /etc/my.cnf.d
skip-grant-tables
mkdir /etc/my.cnf.d
mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --该初始化方式被不建议,应该使用如下方式:
mysqld --initialize-insecure --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
5.6还是需要mysql_install_db初始化,5.7及有以上就建议mysqld初始化了
密码为空的初始化方式:
./mysqld --defaults-file=/usr/local/mysql/my.cnf --initialize-insecure
密码保存在错误日志中的初始化方式:
/usr/local/mysql/bin/mysqld --defaults-file=/usr/local/mysql/my.cnf --initialize
安装后启动参考:
./bin/mysqld --defaults-file=/oradata/mysql8/my.cnf
mysql -uroot -h127.0.0.1
mysql> update user set Host='%' where user='root';
Query OK, 1 row affected (0.00 sec)
Rows matched: 1 Changed: 1 Warnings: 0
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
quit
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
mysql> alter user 'root'@'%' identified by 'Mysql88!';
Query OK, 0 rows affected (0.00 sec