mysql 的安裝與常見配置

更新

apt-get update
apt-get upgrade

安裝

apt-get install mysql-server 會提示輸入root用戶的密碼mysql

修改編碼格式

查看編碼: SHOW VARIABLES LIKE 'character_set_%'linux

編輯文件 /etc/mysql/mysql.conf.d/mysqld.cnfsql

在 [mysqld]標籤下加

character-set-server = utf8
lower_case_table_names = 1  #表名大小寫不敏感

若是想讓其餘機子遠程也能夠登錄須要把這句註釋掉(前面加#)ide

bind-address        = 127.0.0.1

開啓root的遠程登陸權限

Grant all privileges on *.* to 'root'@'%' identified by 'root' with grant option;
flush privileges;

修改帳戶密碼

UPDATE mysql.user SET password=PASSWORD('root') WHERE user='root';
flush privileges;

配置不配置都行

在 [mysqld]標籤下加

character-set-server = utf8
collation-server = utf8_general_ci
init_connect = 'SET collation_connection = utf8_general_ci'
init_connect = 'SET NAMES utf8'
lower_case_table_names = 1  #表名大小寫不敏感

# 注意:在 [mysqld] 下加 `default-character-set = utf8` 可能會致使某些版本的 mysql 沒法登錄

在 [mysql.server]標籤下加
default-character-set = utf8

在 [mysqld_safe]標籤下加
default-character-set = utf8

在 [client]標籤下加
default-character-set = utf8

archlinux

安裝 pacman -S mysql
而後執行 mysql_install_db --user=mysql --ldata=/var/lib/mysql/ --basedir=/usr
若是有問題能夠先刪除 /var/lib/mysql編碼

5.7

5.7 版本 insert、update 報錯能夠在配置文件下添加這行code

sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION'

查詢sql_modelserver

SELECT @@GLOBAL.sql_mode;
SELECT @@SESSION.sql_mode;
相關文章
相關標籤/搜索