linux 系统安装MySQL
以安装在/opt目录下为例
1.下载安装包地址:https://dev.mysql.com/downloads/file/?id=476936,安装包保存到/opt
2.解压:
cd /opt
tar -zxvf mysql-5.7.22-linux-glibc2.12-x86_64.tar
mv mysql-5.7.22-linux-glibc2.12-x86_64 mysql-5.7.22 自己名命名
ln -s mysql-5.7.22 mysql
3.添加用户组和用户
添加用户组
groupadd mysql
添加用户mysql 到用户组mysql
useradd -r -g mysql mysql
4.安装
cd /opt/mysql
mkdir data
chown -R mysql:mysql ./
./bin/mysqld --initialize --user=mysql --basedir=/opt/mysql --datadir=/opt/mysql/data
将mysql/目录下除了data/目录的所有文件,改回root用户所有
chown -R root .
mysql用户只需作为mysql-5.7.22/data/目录下所有文件的所有者
chown -R mysql data
5.复制启动文件
cp support-files/mysql.server /etc/init.d/mysqld
chmod 755 /etc/init.d/mysqld
cp /opt/mysql/bin/my_print_defaults /usr/bin/
6.修改启动脚本
vi /etc/init.d/mysqld
修改项:
basedir=/opt/mysql-5.7.22/
datadir=/opt/mysql-5.7.22/data
port=23306 端口号
加入环境变量,编辑 /etc/profile,这样可以在任何地方用mysql命令了
vi /etc/profile
添加mysql路径,加入下面内容,按ESC–>:wq保存
export PATH=$PATH:/opt/mysql-5.7.22/bin
刷新立即生效
source /etc/profile
7.修改mysql配置项
vi /etc/my.cnf
配置如下:
[mysqld]
basedir = /opt/mysql-5.7.22
datadir = /opt/mysql-5.7.22/data
socket = /tmp/mysql.sock
user = mysql
tmpdir = /tmp
symbolic-links=0
[mysqld_safe]
log-error = /opt/mysql-5.7.22/data/error.log
pid-file = /opt/mysql-5.7.22/data/mysql.pid
!includedir /etc/my.cnf.d
8.启动mysql
service mysqld start
如启动失败,删除 /opt/mysql-5.7.22/data下所有文件,重新执行./bin/mysqld --initialize --user=mysql --basedir=/opt/mysql --datadir=/opt/mysql/data,再启动
重新启动mysql
/etc/init.d/mysqld restart
9.进入mysql修改初始密码,修改远程连接的用户权限问题
vim /etc/my.cnf
mysqld后面添加:
skip-grant-tables (忽略mysql权限问题,直接登录)
service mysqld start
mysql -uroot -p
use mysql;
update user set authentication_string=password(“root”) where user=“root”;
flush privileges;
vim /etc/my.cnf
删除:skip-grant-tables (忽略mysql权限问题,直接登录)
mysql在使用root重置命令后出现必须使用alter user 语句来重置密码
alter user ‘root’@‘localhost’ identified by ‘root’;
1045://权限不够
mysql>GRANT ALL PRIVILEGES ON . TO ‘root’@’%’ IDENTIFIED BY ‘youpassword’ WITH GRANT OPTION;
GRANT ALL PRIVILEGES ON . TO ‘root’@’%’ IDENTIFIED BY ‘root’ WITH GRANT OPTION;