大数据基础(七) Ubuntu 14.04安装MySQL 5.7.14

来源:互联网 发布:淘宝刷单推荐麦粒网 编辑:程序博客网 时间:2024/04/29 01:17
Ubuntu 14.04安装MySQL5.7.14


以下默认root账户,sudo可以省略
1.下载集成包bundle
http://dev.mysql.com/downloads/file/?id=464486
http://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-server_5.7.14-1ubuntu14.04_amd64.deb-bundle.tar
2.解压
mkdir mysql
copy deb to mysql
tar xf mysql-server_5.7.14-1ubuntu14.04_amd64.deb-bundle.tar 
root@py-server:/server/mysql# ll
总用量 515744
drwxr-xr-x 2 root root       4096  8月  1 09:10 ./
drwxr-xr-x 8 root root       4096  8月  1 09:10 ../
-rw-r--r-- 1 7155 31415    827408  7月 12 19:46 libmysqlclient20_5.7.14-1ubuntu14.04_amd64.deb
-rw-r--r-- 1 7155 31415   1171060  7月 12 19:44 libmysqlclient-dev_5.7.14-1ubuntu14.04_amd64.deb
-rw-r--r-- 1 7155 31415  16892310  7月 12 19:45 libmysqld-dev_5.7.14-1ubuntu14.04_amd64.deb
-rw-r--r-- 1 7155 31415     12658  7月 12 19:47 mysql-client_5.7.14-1ubuntu14.04_amd64.deb
-rw-r--r-- 1 7155 31415     79820  7月 12 19:47 mysql-common_5.7.14-1ubuntu14.04_amd64.deb
-rw-r--r-- 1 7155 31415      6823  7月 12 19:44 mysql-community_5.7.14-1ubuntu14.04_amd64.changes
-rw-r--r-- 1 7155 31415   7606214  7月 12 19:46 mysql-community-client_5.7.14-1ubuntu14.04_amd64.deb
-rw-r--r-- 1 7155 31415  20324064  7月 12 19:44 mysql-community-server_5.7.14-1ubuntu14.04_amd64.deb
-rw-r--r-- 1 7155 31415 193773508  7月 12 19:47 mysql-community-source_5.7.14-1ubuntu14.04_amd64.deb
-rw-r--r-- 1 7155 31415  23317078  7月 12 19:46 mysql-community-test_5.7.14-1ubuntu14.04_amd64.deb
-rw-r--r-- 1 7155 31415     12648  7月 12 19:47 mysql-server_5.7.14-1ubuntu14.04_amd64.deb
-rw-r--r-- 1 root root  264048640  8月  1 09:06 mysql-server_5.7.14-1ubuntu14.04_amd64.deb-bundle.tar
-rw-r--r-- 1 7155 31415     12668  7月 12 19:44 mysql-testsuite_5.7.14-1ubuntu14.04_amd64.deb
3.安装
3.1 apt-get更新
更新设置到最新系统:
sudo apt-get update
sudo apt-get -y upgrade
依赖包
apt-get install libaio1
3.2安装
注意顺序
root@py-server:/server/mysql# dpkg -i mysql-common_5.7.14-1ubuntu14.04_amd64.deb 
root@py-server:/server/mysql# dpkg-preconfigure mysql-community-server_5.7.14-1ubuntu14.04_amd64.deb 
在弹出页面输入root密码
root@py-server:/server/mysql# dpkg -i libmysqlclient20_5.7.14-1ubuntu14.04_amd64.deb
root@py-server:/server/mysql# dpkg -i libmysqlclient-dev_5.7.14-1ubuntu14.04_amd64.deb 
root@py-server:/server/mysql# dpkg -i libmysqld-dev_5.7.14-1ubuntu14.04_amd64.deb 
root@py-server:/server/mysql# dpkg -i mysql-community-client_5.7.14-1ubuntu14.04_amd64.deb 
root@py-server:/server/mysql# dpkg -i mysql-client_5.7.14-1ubuntu14.04_amd64.deb
root@py-server:/server/mysql# dpkg -i mysql-common_5.7.14-1ubuntu14.04_amd64.deb 重复了
sudo apt-get -f install
此步为了安装依赖包 libmecab2
apg-get install libmecab2
root@py-server:/server/mysql# dpkg -i mysql-community-server_5.7.14-1ubuntu14.04_amd64.deb
root@py-server:/server/mysql# dpkg -i mysql-server_5.7.14-1ubuntu14.04_amd64.deb 
除了以下几个没有使用:
-rw-r--r-- 1 7155 31415      6823  7月 12 19:44 mysql-community_5.7.14-1ubuntu14.04_amd64.changes
-rw-r--r-- 1 7155 31415 193773508  7月 12 19:47 mysql-community-source_5.7.14-1ubuntu14.04_amd64.deb
-rw-r--r-- 1 7155 31415  23317078  7月 12 19:46 mysql-community-test_5.7.14-1ubuntu14.04_amd64.deb
-rw-r--r-- 1 7155 31415     12668  7月 12 19:44 mysql-testsuite_5.7.14-1ubuntu14.04_amd64.deb
完成。
root@py-server:/server# whereis mysql
mysql: /usr/bin/mysql /etc/mysql /usr/lib/mysql /usr/bin/X11/mysql /usr/include/mysql /usr/share/mysql /usr/share/man/man1/mysql.1.gz
自动启动了服务进程
4.登录
root@py-server:/server/mysql# mysql -u root -p
输入密码即可登录。


5.配置
5.1 utf-8设置
root@py-server:/server# vi /etc/mysql/my.cnf
增加以下内容:
#以下是utf-8的设置
[client]
default-character-set = utf8
[mysqld]
default-storage-engine = INNODB
character-set-server = utf8
collation-server = utf8_general_ci
修改完成后重启mysql服务
root@py-server:/server# /etc/init.d/mysql restart
mysql> SET character_set_database = utf8 ;
mysql> show variables like '%char%';
+--------------------------+--------------------------------------------------------+
| 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/local/mysql-5.1.65-osx10.6-x86_64/share/charsets/ |
+--------------------------+--------------------------------------------------------+
8 rows in set (0.00 sec)
看到utf8字样就表示编码设置正确。


如果还是乱码,可能是数据库建立的时候编码不是utf8,先用set names gbk;解决,
根本方法是重新建立数据库,改好编码,再导入。




5.2 远程访问mysql
登录进数据库:【注意:-p123456需要把123456改成你自己的密码】
>mysql -uroot -p123456
然后,切换到数据库mysql。SQL如下:
use mysql;
接着上面,删除匿名用户后,给root授予在任意主机(%)访问任意数据库的所有权限。SQL语句如下:
mysql> grant all privileges on *.* to 'root'@'%' identified by '123456' with grant option;
Query OK, 0 rows affected, 1 warning (0.03 sec)


5.3 mysql的python驱动
http://dev.mysql.com/downloads/connector/python/
http://dev.mysql.com/downloads/file/?id=458927
root@py-server:/server# dpkg -i mysql-connector-python_2.1.3-1ubuntu14.04_all.deb 
一旦上边的安装后python下import mysql报错,可以试试 pip install mysql-connector-python
还是报错的话,就要自己下zip包安装,实测是可行的。
参考:http://www.liaoxuefeng.com/wiki/0014316089557264a6b348958f449949df42a6d3a2e542c000/0014320107391860b39da6901ed41a296e574ed37104752000的hi4gf评论内容:
wget https://cdn.mysql.com/Downloads/Connector-Python/mysql-connector-python-2.1.3.zip
unzip mysql-connector-python-2.1.3.zip
cd mysql-connector-python-2.1.3
python setup.py install
>>>import mysql


5.4 设置数据路径
没弄。。
默认是 /var/lib/mysql
修改方法参考:
http://www.educity.cn/wenda/399471.html
http://blog.csdn.net/zero_295813128/article/details/51258568



5.5 mysql数据库重启命令
启动:sudo /etc/init.d/mysql start
停止:sudo /etc/init.d/mysql stop
重启:sudo /etc/init.d/mysql restart


6 python访问mysql
参考:http://www.liaoxuefeng.com/wiki/0014316089557264a6b348958f449949df42a6d3a2e542c000/0014320107391860b39da6901ed41a296e574ed37104752000
# 导入MySQL驱动:
>>> import mysql.connector
# 注意把password设为你的root口令:
>>> conn = mysql.connector.connect(user='root', password='password', database='test', use_unicode=True)
>>> cursor = conn.cursor()
# 创建user表:
>>> cursor.execute('create table user (id varchar(20) primary key, name varchar(20))')
# 插入一行记录,注意MySQL的占位符是%s:
>>> cursor.execute('insert into user (id, name) values (%s, %s)', ['1', 'Michael'])
>>> cursor.rowcount
1
# 提交事务:
>>> conn.commit()
  请注意一定要有conn.commit()这句来提交事务,要不然不能真正的插入数据。
  http://www.cnblogs.com/rollenholt/archive/2012/05/29/2524327.html
>>> cursor.close()
# 运行查询:
>>> cursor = conn.cursor()
>>> cursor.execute('select * from user where id = %s', ('1',))
>>> values = cursor.fetchall()
>>> values
[(u'1', u'Michael')]
# 关闭Cursor和Connection:
>>> cursor.close()
True
>>> conn.close()
由于Python的DB-API定义都是通用的,所以,操作MySQL的数据库代码和SQLite类似。

MySQL的SQL占位符是%s;
通常我们在连接MySQL时传入use_unicode=True,让MySQL的DB-API始终返回Unicode。


################################################
libiao1
http://www.cnblogs.com/aLittleBitCool/archive/2011/10/18/2216646.html
0 0
原创粉丝点击