1、下载mysql ,官网下载地址:https://downloads.mysql.com/archives/community/
2、解压 tar xvf mysql-5.8.tar.gz
3、添加权限 chmod -R 777 mysql-5.8
4、添加数据文件和日志文件
cd mysql-5.8/
makedir data
makedir logs
5、添加配置文件 /etc/my.cnf
vim /etc/my.cnf [mysqld] bind-address=0.0.0.0 port=3306 user=mysql basedir=/usr/local/mysql-5.8 datadir=/usr/local/mysql-5.8/data socket=/tmp/mysql.sock log-error=/usr/local/mysql-5.8/logs/mysql.err pid-file=/usr/local/mysql-5.8/mysql.pid #character config character_set_server=utf8mb4 symbolic-links=0
6、初始化
root@MyHost:~# cd /usr/local/mysql/bin/ root@MyHost:/usr/local/mysql/bin# ./mysqld --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysql --initialize 报错 ./mysqld: error while loading shared libraries: libnuma.so.1: cannot open shared object file: No such file or directory # 解决办法,安装numactl root@MyHost:/usr/local/mysql/bin# apt install numactl # 再次初始化 root@MyHost:/usr/local/mysql/bin# ./mysqld --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysql --initialize # 如果还报libao.so.1,安装libao1 root@MyHost:/usr/local/mysql/bin# apt install libao1 # 再次初始化 root@MyHost:/usr/local/mysql/bin# ./mysqld --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysql --initialize # 如果出现 **.so.5的错误,全部软连接到**.so.6 error while loading shared libraries: libncurses.so.5: cannot open shared object file root@MyHost:/usr/local/mysql/bin# find / -name 'libncurses.so*' /usr/lib64/libncurses.so.6 /usr/lib64/libncursesw.so.6 /usr/lib64/libncurses.so.6.2 /usr/lib64/libncursesw.so.6.2 root@MyHost:/usr/local/mysql/bin# ln -s /usr/lib64/libncurses.so.6 /usr/lib64/libncurses.so.5
7、在logs文件中查看初始密码
cat /usr/local/mysql/logs/mysql.err
2023-08-09T15:12:46.069128Z 1 [System] [MY-013576] [InnoDB] InnoDB initialization has started.
2023-08-09T15:12:47.608261Z 1 [System] [MY-013577] [InnoDB] InnoDB initialization has ended.
2023-08-09T15:12:52.225033Z 6 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: ApDyiwczq4+V
8、启动mysql
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql service mysql start
9、修改初始密码、设置远程连接
root@MyHost:~# /usr/local/mysql/bin/mysql -uroot -p
Enter password:
ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.
mysql> alter user 'root'@'localhost' identified by 'root';
设置远程连接
mysql>update mysql.user set host = '%' where user = 'root';