1. 程式人生 > >centos7安裝mysql5.7解壓縮版

centos7安裝mysql5.7解壓縮版

CentOS7 安裝Mysql5.7(解壓縮版)

2.檢查庫檔案是否存在,如有刪除。

[root@localhost Desktop]$ rpm -qa | grep mysql
mysql-libs-5.1.52-1.el6_0.1.x86_64
[root@localhost ~]$ rpm -e mysql-libs-5.1.52.x86_64 --nodeps
[root@localhost ~]$

3.檢查mysql組和使用者是否存在,如無建立。

[root@localhost ~]$ cat /etc/group | grep mysql
mysql:x:490:
[root@localhost
~]$ cat /etc/passwd | grep mysql mysql:x:496:490::/home/mysql:/bin/bash

以上為預設存在的情況,如無,執行新增命令:

[root@localhost ~]$groupadd mysql
[root@localhost ~]$useradd -r -g mysql mysql
//useradd -r引數表示mysql使用者是系統使用者,不可用於登入系統。

4.解壓TAR包,更改所屬的組和使用者

[[email protected] ~]$ cd /usr/local/
[[email protected] local]$ tar xvf mysql-5.7
.12-linux-glibc2.5-x86_64.tar [[email protected] local]$ ls -l total 1306432 -rwxr--r--. 1 root root 668866560 Jun 1 15:07 mysql-5.7.12-linux-glibc2.5-x86_64.tar -rw-r--r--. 1 7161 wheel 638960236 Mar 28 12:54 mysql-5.7.12-linux-glibc2.5-x86_64.tar.gz -rw-r--r--. 1 7161 wheel 29903372 Mar 28 12:48
mysql-test-5.7.12-linux-glibc2.5-x86_64.tar.gz [[email protected] local]$ tar xvfz mysql-5.7.12-linux-glibc2.5-x86_64.tar.gz [[email protected] local]$ mv mysql-5.7.12-linux-glibc2.5-x86_64 mysql [[email protected] local]$ ls -l total 1306436 drwxr-xr-x. 2 root root 4096 Dec 4 2009 bin drwxr-xr-x. 2 root root 4096 Dec 4 2009 etc drwxr-xr-x. 2 root root 4096 Dec 4 2009 games drwxr-xr-x. 2 root root 4096 Dec 4 2009 include drwxr-xr-x. 2 root root 4096 Dec 4 2009 lib drwxr-xr-x. 3 root root 4096 Dec 2 14:36 lib64 drwxr-xr-x. 2 root root 4096 Dec 4 2009 libexec drwxr-xr-x. 9 7161 wheel 4096 Mar 28 12:51 mysql -rwxr--r--. 1 root root 668866560 Jun 1 15:07 mysql-5.7.12-linux-glibc2.5-x86_64.tar -rw-r--r--. 1 7161 wheel 638960236 Mar 28 12:54 mysql-5.7.12-linux-glibc2.5-x86_64.tar.gz -rw-r--r--. 1 7161 wheel 29903372 Mar 28 12:48 mysql-test-5.7.12-linux-glibc2.5-x86_64.tar.gz drwxr-xr-x. 2 root root 4096 Dec 4 2009 sbin drwxr-xr-x. 6 root root 4096 Dec 2 14:36 share drwxr-xr-x. 2 root root 4096 Dec 4 2009 src [[email protected] local]$ chown -R mysql mysql/ [[email protected] local]$ chgrp -R mysql mysql/ [[email protected] local]$ cd mysql/

5.安裝和初始化資料庫

[[email protected]alhost mysql]$bin/mysql_install_db --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data/
2016-06-01 15:23:25 [WARNING] mysql_install_db is deprecated. Please consider switching to mysqld --initialize
2016-06-01 15:23:30 [WARNING] The bootstrap log isn't empty:
2016-06-01 15:23:30 [WARNING] 2016-06-01T22:23:25.491840Z 0 [Warning] --bootstrap is deprecated. Please consider using --initialize instead
2016-06-01T22:23:25.492256Z 0 [Warning] Changed limits: max_open_files: 1024 (requested 5000)
2016-06-01T22:23:25.492260Z 0 [Warning] Changed limits: table_open_cache: 431 (requested 2000)

如果改變預設安裝路徑,則需要  1)/etc/my.cnf、/etc/init.d/mysqld中修改  basedir=’/apps/mysql’  datadir=’/apps/mysql/data’  2)建立ln  mkdir -p /usr/local/mysql/bin  ln -s /apps/mysql/bin/mysqld /usr/local/mysql/bin/mysqld

[root@localhost mysql]$

[root@localhost mysql]$ cp -a ./support-files/my-default.cnf /etc/my.cnf
[root@localhost mysql]$ cp -a ./support-files/mysql.server  /etc/init.d/mysqld
[root@localhost mysql]$ cd bin/
[root@localhost bin]# ./mysqld_safe --user=mysql &
[1] 2932
[root@localhost bin]# 2016-06-01T22:27:09.708557Z mysqld_safe Logging to '/usr/local/mysql/data/localhost.localdomain.err'.
2016-06-01T22:27:09.854913Z mysqld_safe Starting mysqld daemon with databases from /usr/local/mysql/data
[root@localhost bin]# /etc/init.d/mysqld restart
Shutting down MySQL..2016-06-01T22:27:50.498694Z mysqld_safe mysqld from pid file /usr/local/mysql/data/localhost.localdomain.pid ended
 SUCCESS! 
Starting MySQL. SUCCESS! 
[1]+  Done                    ./mysqld_safe --user=mysql
[root@localhost bin]$ 
//設定開機啟動
[root@localhost bin]$ chkconfig --level 35 mysqld on
[root@localhost bin]$

6.初始化密碼

mysql5.7會生成一個初始化密碼,而在之前的版本首次登陸不需要登入。

[[email protected] bin]$ cat /root/.mysql_secret 
# Password set for user '[email protected]' at 2016-06-01 15:23:25 
,xxxxxR5H9
[[email protected] bin]$./mysql -uroot -p
Enter password: 
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.7.12

Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> SET PASSWORD = PASSWORD('123456');
Query OK, 0 rows affected, 1 warning (0.00 sec)

mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

7.新增遠端訪問許可權

mysql> use mysql; 
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A


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.sys |
+-----------+-----------+
//一定要重啟才會生效。
/etc/init.d/mysqld restart

遇到的問題:

找不到mysql.sock,mysql.sock丟失問題解決方法

連線Mysql時,機器上找不到mysql.sock檔案你可以簡單地通過重啟伺服器重新建立得到它。因為伺服器在啟動時重新建立它。

[[email protected] mysql-5.7.13]# ./bin/mysql_install_db --user=mysql

2016-06-26 02:47:09 [WARNING] mysql_install_db is deprecated. Please consider switching to mysqld --initialize

2016-06-26 02:47:09 [ERROR]   The data directory needs to be specified.

    解決:需要新建data目錄,指定安裝目錄(在非預設目錄時需要指定,預設路徑:/usr/local/mysql,同時需要指定./support-files/mysql.server中的basedir和datadir為相應路徑)。

[[email protected] mysql-5.7.13]# ./bin/mysql_install_db --user=mysql --basedir=/usr/local/mysql-5.7.13/ --datadir=/usr/local/mysql-5.7.13/data/

2016-06-26 02:48:47 [WARNING] mysql_install_db is deprecated. Please consider switching to mysqld --initialize

2016-06-26 02:49:19 [WARNING] The bootstrap log isn't empty:

2016-06-26 02:49:19 [WARNING] 2016-06-26T09:48:50.798592Z 0 [Warning] --bootstrap is deprecated. Please consider using --initialize instead

2016-06-26T09:48:50.898732Z 0 [Warning] Changed limits: max_open_files: 1024 (requested 5000)

2016-06-26T09:48:50.898778Z 0 [Warning] Changed limits: table_open_cache: 431 (requested 2000)

    以上報錯均因未在mysql.server中指定自定義的路徑。

若是還提示已經有data檔案了 刪除了它,新建即可