cetos7.2安裝mysql
1.默認(rèn)安裝的是mariadb懂从,首先卸載
sudo yum -y remove mariadb*
2.下載要安裝的mysql
wget -P ~ http://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm
工作目錄切換到到家目錄
cd ~
3.安裝
sudo rpm -ivh mysql57-community-release-el7-11.noarch.rpm
4.查看當(dāng)前使用的mysql版本
yum repolist enabled | grep "mysql.*-community.*"
5.查看所有的版本宵蛀,當(dāng)前版本顯示啟動(dòng)茶鹃,其他顯示禁用
yum repolist all | grep mysql
版本可以切換
yum-config-manager --enable mysql57-community
yum-config-manager --disable mysql56-community
或者通過(guò)修改vim /etc/yum.repos.d/mysql-community.repo文件讥裤,改變默認(rèn)安裝的mysql版本。比如要安裝5.6版本宋梧,將5.7源的enabled=1改成enabled=0虐译,然后再將5.6源的enabled=0改成enabled=1即可泉唁。
5.安裝mysql-server
sudo yum install mysql-community-server
6.啟動(dòng)此服務(wù)
systemctl start mysqld
查看狀態(tài)
systemctl status mysqld
systemctl stop mysqld? ? #停止mysqld
systemctl restart mysqld? ? #重啟mysqld
systemctl enable mysqld? #設(shè)置開機(jī)啟動(dòng)
7.mysql相關(guān)配置
在安裝mysql的時(shí)候會(huì)生成默認(rèn)隨機(jī)密碼,所有首先免密揩慕,然后再修改密碼
免密設(shè)置:
打開配置文件/etc/my.cnf
在[mysqld]下添加
skip-grant-tables
即可登陸
mysql -u root -p
直接回車不需要輸入密碼
如果給root設(shè)定密碼
set password for 'root'@'localhost' = password('123456');
設(shè)置完密碼之后就可以使用mysql -u root -p 命令來(lái)登錄我們的mysql數(shù)據(jù)庫(kù)了
8.創(chuàng)建用戶
CREATE USER 'username'@'host' IDENTIFIED BY 'password';
說(shuō)明:
username:你將創(chuàng)建的用戶名
host:指定該用戶在哪個(gè)主機(jī)上可以登陸亭畜,如果是本地用戶可用localhost,如果想讓該用戶可以從任意遠(yuǎn)程主機(jī)登陸迎卤,可以使用通配符%
password:該用戶的登陸密碼拴鸵,密碼可以為空,如果為空則該用戶可以不需要密碼登陸服務(wù)器
9.授權(quán):
命令:
GRANT privileges ON databasename.tablename TO 'username'@'host'
說(shuō)明:
privileges:用戶的操作權(quán)限止吐,如SELECT宝踪,INSERT侨糟,UPDATE等碍扔,如果要授予所的權(quán)限則使用ALL
databasename:數(shù)據(jù)庫(kù)名
tablename:表名,如果要授予該用戶對(duì)所有數(shù)據(jù)庫(kù)和表的相應(yīng)操作權(quán)限則可用*表示秕重,如*.*
10.連接數(shù)據(jù)庫(kù)
安裝pymysql
pip install pymysql
在程序中連接mysql需要在代碼中包含
import pymysql
#創(chuàng)建連接? host=數(shù)據(jù)庫(kù)地址
conn = pymysql.connect(host='', user = ‘’, passwd = ‘’, db = ‘’)
# 創(chuàng)建cursor游標(biāo)對(duì)象
c = conn.cursor
# 執(zhí)行sql語(yǔ)句
c.execute()
# 提交
conn.commit()
# 關(guān)閉
conn.close()
11.mysql -u root -p
mysql>show databases; #查看所有的數(shù)據(jù)庫(kù)
mysql>creat database dbname; #創(chuàng)建數(shù)據(jù)庫(kù)
mysql>use tablename; #進(jìn)入tablename數(shù)據(jù)庫(kù)
mysql>show tables; #查看庫(kù)中所有的表
mysql>drop database xxx; #刪除數(shù)據(jù)庫(kù)
mysql>drop table xxx; #刪除表
mysql>show variables like '%char%'; #查看數(shù)據(jù)庫(kù)編碼
12.數(shù)據(jù)庫(kù)的編碼問題
中文支持
1.修改配置文件sudo vim /etc/my.cnf
[mysqld] #原有的
skip-grant-tables #免密碼? 與編碼無(wú)關(guān)的
character-set-server=utf8
在文件的最后添加
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8
2.配置好以后,重啟一下mysql
systemctl restart mysqld.service
3. 連接數(shù)據(jù)庫(kù)時(shí)候加上charset='utf-8'
pypython.connect(charset='utf-8')