1. 程式人生 > >從搭建環境到釋出線上專案的企業級流程之mysql的安裝與配置

從搭建環境到釋出線上專案的企業級流程之mysql的安裝與配置

一安裝:

1.centos 6.8 64位安裝

檢查是否已經安裝mysql:rpm -qa | grep mysql-server

使用阿里雲預設軟體源安裝:yum -y install mysql-server(mysql5.1.73)

2.macOS 安裝

使用homebrew安裝:brew install mysql(預設是最新版mysql5.7.19)

 

二配置:

1.centos 6.8 64位

預設配置檔案在/etc/my.cnf

在配置檔案中[mysqld]節點下新增:

character-set-server = utf8

在[mysql]節點下新增(如果沒有此節點,則手動建立):

default-character-set=utf8

使用命令:service mysqld start

進入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/ |

+--------------------------+----------------------------+

exit 退出

 執行命令:chkconfig mysqld on 設定mysql自啟動    (centos7中使用  systemctl enable mysqld  設定mysql自啟動)

執行命令:chkconfig --list mysqld(如果2----5位都為啟動on狀態就是設定成功)

配置防火牆:

vim /etc/sysconfig/iptables

插入:-A INPUT -p tcp -m tcp --dport 3306 -j ACCEPT

儲存退出。執行 service iptables restart 重啟防火牆

mysql -uroot 無密碼進入mysql

select user,host,password from mysql.user;檢視當前使用者

刪除匿名使用者:delete from mysql.user where user='';

 

修改root使用者密碼:

set password for [email protected] = password('yourpassword');

set password for [email protected] = password('yourpassword');

重新整理使以上操作生效:flush privileges;

退出並重新登陸:mysql -uroot -p 回車並輸入密碼(密碼不可見)

 新增使用者:

insert into mysql.user(Host,User,Password) values("localhost","yourusername",password("yourpassword"));

新增資料庫:

create database `databasename` default character set utf8 collate utf8_general_ci;

給賬號開通外網所有許可權

grant all privileges on databasename.* to 'yourusername'@'%' identified by 'yourpassword';(這裡是給特定的資料庫開通了所有許可權,也可以單獨開通某些許可權,這裡不詳細敘述)

2.macOs配置:

啟動mysql:mysql.server start

編碼無須配置,預設為utf8

進入mysql

select host,user,authentication_string from mysql.user;檢視當前使用者(mysql5.7的password欄位改成了authentication_string)

刪除匿名使用者:delete from mysql.user where user='';

 

修改root使用者密碼:

set password for [email protected] = password('yourpassword');

set password for [email protected] = password('yourpassword');

重新整理使以上操作生效:flush privileges;

退出並重新登陸:mysql -uroot -p 回車並輸入密碼(密碼不可見)

 

踩坑記錄:

  執行在mysql管理工具中執行sql檔案時中文資料變成亂碼:

    發現把sql檔案中的set NAMES utf8 這一句刪除就行了。 (錯誤)

    找到真正原因是新建連線時,編碼設定就為自動就好了,千萬不要手動選成utf-8