Mysql安装详解(Linux)
- 下载合适版本安装包
wget https://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz
-
安装步骤
-
解压:
tar -xvzf mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz
-
修改名称:
mv mysql-5.7.24-linux-glibc2.12-x86_64/ mysql
-
添加系统mysql组和mysql 用户
⁃ 执行命令:groupadd mysql和useradd -r -g mysql mysql
-
修改目录权限
⁃ 执行命令:chown -R mysql:mysql ./
-
初始化数据库:
./scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
-
修改配置文件my.cnf
basedir=/home/lgc/mysql/mysql
mysql安装路径
datadir=/home/lgc/mysql/data
mysql数据文件存放路径
scoket=/home/lgc/mysql/mysql/mysql.scoket
log-error=/home/lgc/mysql/error.log
mysql 日志文件路径 -
启动mysql
-
启动/停止mysql
-
-
可能会遇到的问题
-
can't connect to local MySQL server through socket 'var/run/mysqld/mysqld.sock'
解决办法:
1.权限问题
2.修改/etc/my.cnf文件
3.做了一个连接,重启mysqlln -s /tmp/mysql.sock /var/lib/mysql/mysql.sock
-
Enter password:ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
问题产生原因:
数据库中存在空的用户解决方法:
1 停用mysql服务:# service mysql stop
2 输入命令:# mysqld_safe --user=mysql --skip-grant-tables --skip-networking &
3 登入数据库:# mysql -u root mysql
4 mysql> use mysql;
5 mysql> select user,host,password from user;
6 将上面查询出来的空用户删除:mysql> delete from user where user=’’;
7 退出数据库:mysql> quit
8 启动mysql服务:# service mysql start
9 重新登录:# mysql -u root -p
注意:
按照传统改密码方式发现没有 password这个字段。
mysql> update user set password=password('123') where user='root';
ERROR 1054 (42S22): Unknown column 'password' in 'field list'
查询user表结构
mysql> desc user;
网上查了一下据说5.7 版本password 字段改成authentication_string password函数还是原来的password函数
mysql> update user set authentication_string=password('123') where user='root';
重启mysql 即可!