1、官网下载
https://dev.mysql.com/downloads/mysql/
https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz
2、检查mysql是否存在
[root@spark ~]# rpm -qa | grep mysql
3、解压
[kanaka@spark ~]$ sudo tar zxvf mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz -C /opt
4、添加组及用户
[kanaka@spark ~]$ sudo groupadd mysql
[kanaka@spark ~]$ sudo useradd -r -g mysql mysql
[kanaka@spark ~]$ sudo chown -R mysql:mysql /opt/mysql
5、配置/etc/my.cnf
[mysql]
default-character-set=utf8
[mysqld]
port = 3306
basedir=/opt/mysql
datadir=/opt/mysql/data
max_connections=200
character-set-server=utf8
default-storage-engine=INNODB
lower_case_table_names=1
max_allowed_packet=16M
6、初始化
[kanaka@spark mysql]$ sudo bin/mysql_install_db --user=mysql --basedir=/opt/mysql/ --datadir=/opt/mysql/data/
2019-05-03 20:38:34 [WARNING] mysql_install_db is deprecated. Please consider switching to mysqld --initialize
2019-05-03 20:38:40 [WARNING] The bootstrap log isn't empty:
2019-05-03 20:38:40 [WARNING] 2019-05-03T12:38:34.717351Z 0 [Warning] --bootstrap is deprecated. Please consider using --initialize instead
2019-05-03T12:38:34.719717Z 0 [Warning] Changed limits: max_open_files: 1024 (requested 5000)
2019-05-03T12:38:34.719749Z 0 [Warning] Changed limits: table_open_cache: 407 (requested 2000)
[kanaka@spark mysql]$ sudo cp ./support-files/mysql.server /etc/init.d/mysqld
[kanaka@spark mysql]$ sudo chown 777 /etc/my.cnf
[kanaka@spark mysql]$ sudo chmod +x /etc/init.d/mysqld
7、启动
[kanaka@spark mysql]$ /etc/init.d/mysqld restart
8、设置开机启动
[kanaka@spark mysql]$ sudo chkconfig --level 35 mysqld on
[kanaka@spark mysql]$ sudo chmod +x /etc/rc.d/init.d/mysqld
[kanaka@spark mysql]$ sudo chkconfig --add mysqld
[kanaka@spark mysql]$ sudo chkconfig --list mysqld
[kanaka@spark mysql]$ sudo service mysqld status
SUCCESS! MySQL running (2260)
9、查看默认密码
cat /root/.mysql_secret
# Password set for user 'root@localhost' at 2019-05-03 20:38:34
bOQHqChD.b6_
10、QA
1)ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/opt/mysql/mysql.sock' (2)
解决:
* 修改/etc/my.cnf文件:socket=/opt/mysql/mysql.sock
* 重启mysql
* 查看/opt/mysql/mysql.sock已生成
* 再次重启mysql,即可登录mysql
2)重置密码
mysql> set PASSWORD = PASSWORD('root');
Query OK, 0 rows affected, 1 warning (0.00 sec)
mysql> flush privileges;
Query OK, 0 rows affected (0.01 sec)
3)添加远程访问权限
mysql> use mysql;
Database changed
mysql> update user set host='%' where user='root';
Query OK, 1 row affected (0.00 sec)
Rows matched: 1 Changed: 1 Warnings: 0
mysql> select host,user from user;
+-----------+---------------+
| host | user |
+-----------+---------------+
| % | root |
| localhost | mysql.session |
| localhost | mysql.sys |
+-----------+---------------+
3 rows in set (0.00 sec)
4)创建数据库
mysql> CREATE DATABASE `hive` CHARACTER SET utf8 COLLATE utf8_general_ci;
Query OK, 1 row affected (0.00 sec)
mysql> GRANT ALL PRIVILEGES ON hive.* TO hive@'%' IDENTIFIED BY 'hive';
Query OK, 0 rows affected, 1 warning (0.00 sec)
mysql> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.00 sec)