- 由于yum和wget都无法下载mysql,所以只能先下载压缩包到本地再上传。
- 官网下载很慢,所以找了搜狐的镜像网站下载http://mirrors.sohu.com/mysql/MySQL-5.7/
我下载的是linux通用版mysql-test-5.7.29-linux-glibc2.12-x86_64.tar.gz - 我是苹果osx操作系统,直接scp命令拷贝到服务器,如果是购买的阿里云之类的,有提供ftp服务,可以通过ftp拷贝上去
- root登录服务器,以下操作均使用root用户
- 到上传压缩包的目录解压 tar -zvxf mysql-test-5.7.29-linux-glibc2.12-x86_64.tar.gz
- 把解压出来的目录cp或mv到安装目录 mv mysql-test-5.7.29-linux-glibc2.12-x86_64 /usr/local/mysql (后面默认配置是这个目录,没啥特殊要求就放这个目录好了)
- 由于启动mysql的时候,默认使用的是/etc/my.cnf 这个配置,而my.cnf里面的datadir是/var/lib/mysql,因此就以此目录作为数据库文件目录,如果没有就这个目录就创建一个
mkdir /var/lib/mysql,修改权限
chmod 777 /var/lib/mysql - log文件及目录创建,否则启动会报错:'/var/log/mariadb/mariadb.log', however file don't exists. Create writable for user 'mysql'
创建
mkdir /var/log/mariadb
touch /var/log/mariadb/mariadb.log - 创建mysql用户及组,一般不直接用root用户启动mysql,所以要创建专用用户
groupadd mysql
useradd -r -g mysql mysql - 对上面的目录进行属主变更:
chown -R mysql:mysql /usr/local/mysql
chown -R mysql:mysql /var/lib/mysql
chown -R mysql:mysql /var/log/mariadb - 初始化mysql,mysql_install_db命令在5.7已经不能使用。执行的时候会提示已经废除。应该用mysqld:
cd /usr/local/mysql/bin ./mysqld --user=mysql --basedir=/home/mysql --datadir=/var/lib/mysql --initialize
出现最后的信息是数据库root用户的初始密码,需要记下来:root@localhost: vVfe_>jBu8uM - 启动MySQL:
出现Starting MySQL. SUCCESS!即成功,可以用ps -ef|grep mysqld来查看进程验证cd /usr/local/mysql/ ./support-files/mysql.server start
- 尝试登录及修改数据库root用户密码:
cd /usr/local/mysql/bin ./mysql -uroot -p Enter password: 输入刚才的密码
到这里报错了:ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock'
按网上的方法,做个软连接
ln -s /var/lib/mysql/mysql.sock /tmp
重新登录,出现“mysql>”的提示符证明已经登录成功。
修改密码:
set password=password('youpassword');
提示:Query OK, 0 rows affected, 1 warning (0.00 sec)
尝试用新密码登录,没问题就ok了
centos7安装mysql5.7遇到的问题及解决
最新推荐文章于 2023-05-23 23:26:24 发布