国产麒麟系统系统安MYSQL
一、下载要安装的版本
去MYSQL官网页页面下载对应的MYSQL版本
//官网地址:
https://downloads.mysql.com/archives/community/
二、开始安装
1.将下载好的安装包上传至服务器
上传至/usr/local/下(如何上传不做赘述,自学成才)
2.解压、重命名
tar -xvf mysql-5.7.38-linux-glibc2.12-x86_64.tar.gz
mv mysql-5.7.38-linux-glibc2.12-x86_64/ mysql
3.在mysql根目录下创建data目录
cd /usr/local/mysql/
mkdir data
4.创建mysql用户组和mysql用户
groupadd mysql
useradd -g mysql mysql
5.改变mysql目录权限
chown -R mysql.mysql /usr/local/mysql/
6.初始化数据库
bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --lower-case-table-names=1
执行完命令后,会出现 root@localhost:*********
仔细看,后面的******就是密码,要记住
7. 配置mysql
- 在mysql/support-files创建文件my-default.cnf
cd /usr/local/mysql/support-files/
touch my-default.cnf
- 复制配置文件到/etc/my.cnf
cp -a ./my-default.cnf /etc/my.cnf
- 编辑/etc/my.cnf
[client]
port=3306
socket=/tmp/mysql.sock
[mysqld]
port=3306
user=mysql
socket=/tmp/mysql.sock
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
8.配置环境变量
-编辑/etc/profile
#配置mysql环境变量
PATH=/data/mysql/bin:/data/mysql/lib:$PATH
export PATH
- 使其生效
source /etc/profile
- 测试环境变量是否生效
[root@csnode3101 ~]# echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
9.启动mysql
- 进去mysql安装bin目录—命令行启动
./mysqld_safe &1
三、安装问题记录
1.登录mysql报mysql: command not found
原因:因为/usr/local/bin目录下缺失mysql导致,只需要按以下方法建立软链接即可解决:
把mysql安装目录,比如MYSQLPATH/bin/mysql,映射到/usr/local/bin目录下:
解决:
# cd /usr/local/bin
# ln -fs /MYSQLPATH/bin/mysql mysql
2.客户端连接报错:is not allowed to connect to this mysql server
原因:mysql数据库只允许自身所在的本机器连接,不允许远程连接。
解决:
1.命令mysql -u root -p登录mysql
2.进入到mysql数据库中:
use mysql;
select host from user where user='root';
3.执行update语句把权限进行修改:
update user set host = '%' where user ='root';
4.刷新配置:
flush privileges;
3.修改密码语句
alter user '用户名'@'loaclhost' identified by '修改的密码';
4.登录mysql后执行任何语句都报错
报错显示:You must reset your password using ALTER USER statement before executing this statement
解决办法:
- 停止所有的 MySQL 进程
先查出mysql的所有PID
ps -ef | grep mysql
关闭进程
kill -9 PID
- 使用无验证模式启动 MySQL。在mysql的bin目录下执行命令
./mysqld_safe --skip-grant-tables
- 使用 MySQL 客户端登录无需密码。此时可以执行任何语句。
//执行mysql后,进入mysql命令行
mysql
- 修改 root 用户密码
update mysql.user set authentication_string=password('yourpassword'), password_expired='N' where user='root';`
- 然后退出 mysql命令行
exit;
重新再次关闭mysql所有进程
先查出mysql的所有PID
ps -ef | grep mysql
关闭进程
kill -9 PID
- 进入mysql的bin目录,启动mysql然后正常登录即可
./mysqld_safe