一、步骤
1、 使用root登陆系统,打开命令行窗口。
选择安装目录,推荐/usr/local
复制安装包到该目录下,执行解压缩命令:
tar -xzvf mysql-5.7.21-linux-glibc2.12-x86_64.tar.gz
2、 方便展示,修改文件夹名称:
mv mysql-5.7.21-linux-glibc2.12-x86_64 mysql
3、 创建组合用户(如果已存在,则提示已存在)
groupadd mysql
useradd -r -g mysql mysql
4、 进入mysql目录,创建data目录
mkdir data
5、 更改mysql目录下所有的目录及文件夹所属组合用户:
cd /usr/local/
chown -R mysql mysql/
chgrp -R mysql mysql/
6、 安装和初始化数据库:
./mysqld --initialize --user=mysql --basedir=/usr/local/mysql/--datadir=/usr/local/mysql/data/
7、 配置my.cnf :
接下来进入/usr/local/mysql/support-files/目录下,将my-default.cnf文件直接copy到/usr/local/mysql文件中:
cp -a ./support-files/my-default.cnf /usr/local/mysql
8、 启动mysql
cd bin/
./mysqld_safe --user=mysql &
9、 将mysqld服务加入开机自启动项:
将{mysql}/ support-files/mysql.server 拷贝为/etc/init.d/mysql并设置运行权限,这样就可以使用service mysql命令启动/停止服务,否则就只能使用{mysql}/bin/mysqld_safe &命令来启动服务,还需要把mysql.server中basedir的相关路径,改为自定义的路径,默认路径是/usr/local/mysql。
cp mysql.server /etc/init.d/mysql
chmod +x /etc/init.d/mysql
chkconfig --add mysql
chkconfig --list mysql
10、 启动服务:
service mysql start
11、 登录mysql:
./mysql -u root –p
12、 修改密码:这里需要用alter语句修改
mysql> update mysql.user set authentication_string=password('root') where user='root';
//报错的话执行这一行
SET PASSWORD FOR 'root'@localhost=PASSWORD('root')
13、 设置远程登录权限:
grant all privileges on *.* to'root' @'%' identified by 'root';
flush privileges;
quit
14、设置环境变量
vi /etc/profile
添加:export PATH=$PATH:/usr/local/mysql/bin
二、注意事项
1、 第6步,安装和初始化数据库时,如果报错:
[ERROR] Can’t find error-message file ‘/usr/local/mysql/–datadir=/usr/local/mysql/data/share/errmsg.sys’. Check error-message file location and ‘lc-messages-dir’ con
解决方法:
./mysqld --initialize --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data/ --lc_messages_dir=/usr/local/mysql/share --lc_messages=en_US
2、 第7步,如果不存在my-default.cnf文件,则在/usr/local/mysql目录下创建my.cnf,并写入以下内容:
[client]
port = 3306
loose-default-character-set = utf8
[mysqld]
#服务端口号 默认3306
port = 3306
mysql安装根目录
basedir = /usr/local/mysql
mysql数据文件所在位置
datadir = /usr/local/mysql/data
是否对sql语句大小写敏感,1表示不敏感
lower_case_table_names = 1
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
character-set-server=utf8
server_id=1
[mysql]
default-character-set=utf8
3、 第11步,启动时,默认密码为第6步创建成功后提示信息生成密码。