在 CentOS7 上安裝 MySQL5.7

分類:IT技術 時間:2016-10-08

在 CentOS7 上安裝 mysql5.7

1 通過 SecureCRT 連接到阿裏雲 CentOS7 服務器;

2 進入到目錄 /usr/local/ 中:
cd /usr/local/

3 創建目錄 /usr/local/tools,如果有則忽略:
mkdir -p tools

4 創建 /usr/local/mysql 目錄,如果已存在則忽略:
mkdir -p mysql

5 進入到目錄 /usr/local/tools 中:
cd tools/

6 查看系統中是否已安裝 MySQL 服務:
rpm -qa | grep mysql

yum list installed | grep mysql

7 如果已安裝則刪除 MySQL 及其依賴的包:
yum -y remove mysql-libs.x86_64

8 下載 mysql57-community-release-el7-8.noarch.rpm 的 YUM 源:
wget http://repo.mysql.com/mysql57-community-release-el7-8.noarch.rpm

9 安裝 mysql57-community-release-el7-8.noarch.rpm:
rpm -ivh mysql57-community-release-el7-8.noarch.rpm
安裝完後,得到如下兩個包:
mysql-community.repo
mysql-community-source.repo

10 安裝 MySQL:
yum install mysql-server
遇到疑問的地方,一路 Y 下去即可;
安裝完畢後,在  /var/log/mysqld.log 文件中會自動生成一個隨機的密碼,我們需要先取得這個隨機密碼,以用於登錄 MySQL 服務端:
grep "password" /var/log/mysqld.log
打印如下內容:
A temporary password is generated for root@localhost: hilX0U!9i3_6
我們復制 root@localhost: 後面的隨機字符串,這個字符串就是 MySQL 在安裝完成後為我們隨機生成的密碼;

12 登錄到 MySQL 服務端並更新用戶 root 的密碼:
mysql -u root -philX0U!9i3_6
打印出 MySQL 的版本即表明已登錄;
設置用戶 root 可以在任意 IP 下被訪問:
grant all privileges on *.* to root@"%" identified by "新密碼";
設置用戶 root 可以在本地被訪問:
grant all privileges on *.* to root@"localhost" identified by "新密碼";
刷新權限使之生效:
flush privileges;
更新 MySQL 的用戶 root的密碼:
set password = password('新密碼');
註意:由於 MySQL5.7 采用了密碼強度驗證插件 validate_password,故此我們需要設置一個有一定強度的密碼;
輸入 exit 後用新密碼再次登錄看看吧!

13 查看 MySQL 當前都內置了哪些數據庫:
mysql> show databases;
我們發現其內置了如下一些數據庫:
information_schema
mysql             
performance_schema
sys 

14 啟動 MySQL 服務:
service mysqld start

15 關閉 MySQL 服務:
service mysqld stop

16 重啟 MySQL 服務:
service mysqld restart

17 查看 MySQL 的狀態:
service mysqld status

18 查看 MySQL 的字符集:
mysql> show variables like '%character%';
+--------------------------+----------------------------+
| Variable_name            | Value                      |
+--------------------------+----------------------------+
| character_set_client    | utf8                      |
| character_set_connection | utf8                      |
| character_set_database  | latin1                    |
| character_set_filesystem | binary                    |
| character_set_results    | utf8                      |
| character_set_server    | latin1                    |
| character_set_system    | utf8                      |
| character_sets_dir      | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
8 rows in set (0.01 sec)
查看指定的數據庫中指定數據表的字符集,如查看 mysql 數據庫中 servers 表的字符集:
  show table status from mysql like '%servers%';
查看指定數據庫中指定表的全部列的字符集,如查看 mysql 數據庫中 servers 表的全部的列的字符集:
show full columns from servers;

19 設置 MySQL 的字符集為 UTF-8:
打開 /etc 目錄下的 my.cnf 文件(此文件是 MySQL 的主配置文件):
/etc/my.cnf
在 [mysqld] 前添加如下代碼:
[client]
default-character-set=utf8
在 [mysqld] 後添加如下代碼:
character_set_server=utf8
再次查看字符集:
mysql> show variables like '%character%';
+--------------------------+----------------------------+
| Variable_name            | Value                      |
+--------------------------+----------------------------+
| character_set_client    | utf8                      |
| character_set_connection | utf8                      |
| character_set_database  | utf8                      |
| character_set_filesystem | binary                    |
| character_set_results    | utf8                      |
| character_set_server    | utf8                      |
| character_set_system    | utf8                      |
| character_sets_dir      | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
8 rows in set (0.01 sec)

20 /var/lib/mysql 是存放數據庫文件的目錄;

21 /var/log 目錄下的 mysqld.log 文件記錄 MySQL 的日誌;

22 MySQL 采用的 TCP/IP 協議傳輸數據,默認端口號為 3306,我們可以通過如下命令查看:
netstat -anp

23 忘記密碼時,可用如下方法重置:
# service mysqld stop
# mysqld_safe --user=root --skip-grant-tables --skip-Networking &
# mysql -u root
mysql> use mysql;
mysql> update user set password=password("new_password") where user="root";
mysql> flush privileges;

本文永久更新鏈接地址


Tags:

文章來源:


ads
ads

相關文章
ads

相關文章

ad