ubuntu PostgreSQL使用指南,ubuntupostgresql
安装
sudo apt-get install postgresql postgresql-contrib
apt-cache search postgres
服务器设置
安装好之后首先要修改postgres user密码,首先进入postgres程序,
sudo -u postgres psql postgres
postgres是一个服务器的数据库程序,用来管理数据,处理客户端请求,这里我们用这个程序来创建用户和数据库。接下来我们来修改密码:
\password postgres
接下来输入密码。
创建用户(user)
数据库是由用户掌控的,这里我们在postgres里面来创建一个需要密码才能访问的用户:
CREATE USER user_name WITH PASSWORD 'password';
注意,这里的“user_name”必须和你电脑的用户名相同,因为postgreSQL打开数据库默认使用系统用户名。我们将在下文知道,如果要使用YCSB做postgreSQL做基准测试,我们必须给用户设密码,不然的话,YCSB的数据库指令无法通过验证。
创建数据库
用终端在刚刚创建的用户下创建数据库:
sudo -u postgres createdb database_name
创建好了之后就可以用psql database_name
使用数据库了。要退出数据库,输入\q
。
删除用户和数据库
进入postgres程序,用DROP指令即可。
做单机YCSB基准测试
准备
YCSB是雅虎开发的一个数据库性能基准测试工具,源代码以及使用说明放在github上,这里是简化之后的使用步骤:
1. 安装JDK(非JRE)
2. 在终端中安装maven:sudo apt-get install maven
3. 在github上下载YCSB并按照说明安装:https://github.com/brianfrankcooper/YCSB/wiki/Getting-Started
4. 下载postgreSQL的JDBC(.jar),然后修改CLASSPATH:export CLASSPATH=~/path to .jar file
。注意.jar文件必须放在解压之后的ycsb源代码目录下(比如ycsb-0.1.4),不然的话,测试会报错说无法找到JDBC驱动。
5. 创建一个名为“ycsbtest”的数据库
6. 在“ycsbtes”t中创建一个名为“usertable”的表格
CREATE TABLE usertable(YCSB_KEY VARCHAR (255) PRIMARY KEY,
FIELD1 TEXT, FIELD2 TEXT,
FIELD3 TEXT, FIELD4 TEXT,
FIELD5 TEXT, FIELD6 TEXT,
FIELD7 TEXT, FIELD8 TEXT,
FIELD9 TEXT, FIELD10 TEXT);
跑测试
进入YCSB的源代码所在的目录,首先把数据加载到数据库中:
./bin/ycsb load jdbc -P workloads/workloada -p db.driver=org.postgresql.Driver -p db.url=jdbc:postgresql://localhost/ycsbtest -p db.user=user_name -p db.passwd=password
里面的“user_name”和“password”是你的用户和用户密码。之后开始跑测试:
./bin/ycsb run jdbc -P workloads/workloada -p db.driver=org.postgresql.Driver -p db.url=jdbc:postgresql://localhost/ycsbtest -p db.user=user_name -p db.passwd=password
卸载postgreSQL
要彻底删除,首先输入
sudo apt-get --purge remove postgresql
上述指令不会删除所有相关包,我们输入
dpkg -l | grep postgres
会列出所有和postgreSQL一起装进来的包,然后用sudo apt-get --purge remove
将这些包全部删除就行了。